Skip to content

Commit

Permalink
Moved Statement, Item, Type implementations to axiom.lang.spi
Browse files Browse the repository at this point in the history
Signed-off-by: Tony Tkacik <tonydamage@gmail.com>
  • Loading branch information
tonydamage committed May 19, 2020
1 parent ac85a7e commit d3ea298
Show file tree
Hide file tree
Showing 10 changed files with 16 additions and 20 deletions.
Expand Up @@ -6,15 +6,14 @@
*/
package com.evolveum.axiom.lang.impl;

import com.evolveum.axiom.api.AxiomIdentifier;
import com.evolveum.axiom.lang.api.AxiomTypeDefinition;
import com.evolveum.axiom.lang.impl.AxiomStatementImpl.Factory;
import com.evolveum.axiom.lang.spi.AxiomStatementImpl;

public interface AxiomStatementFactoryContext {

AxiomStatementImpl.Factory<?, ?> factoryFor(AxiomTypeDefinition identifier);

static AxiomStatementFactoryContext defaultFactory(AxiomStatementImpl.Factory factory) {
static AxiomStatementFactoryContext defaultFactory(AxiomStatementImpl.Factory<?,?> factory) {
return (identifier) -> factory;
}

Expand Down
Expand Up @@ -20,10 +20,13 @@
import com.evolveum.axiom.lang.api.AxiomSchemaContext;
import com.evolveum.axiom.lang.api.AxiomTypeDefinition;
import com.evolveum.axiom.lang.api.IdentifierSpaceKey;
import com.evolveum.axiom.lang.impl.AxiomStatementImpl.Factory;
import com.evolveum.axiom.lang.spi.AxiomIdentifierResolver;
import com.evolveum.axiom.lang.spi.AxiomItemDefinitionImpl;
import com.evolveum.axiom.lang.spi.AxiomSemanticException;
import com.evolveum.axiom.lang.spi.AxiomStatementImpl;
import com.evolveum.axiom.lang.spi.AxiomTypeDefinitionImpl;
import com.evolveum.axiom.lang.spi.SourceLocation;
import com.evolveum.axiom.lang.spi.AxiomStatementImpl.Factory;
import com.evolveum.axiom.reactor.Requirement;

import org.jetbrains.annotations.Nullable;
Expand Down
Expand Up @@ -15,10 +15,11 @@
import com.evolveum.axiom.lang.api.AxiomItemDefinition;
import com.evolveum.axiom.lang.api.AxiomTypeDefinition;
import com.evolveum.axiom.lang.api.IdentifierSpaceKey;
import com.evolveum.axiom.lang.impl.AxiomStatementImpl.Factory;
import com.evolveum.axiom.lang.spi.AxiomSemanticException;
import com.evolveum.axiom.lang.spi.AxiomStatement;
import com.evolveum.axiom.lang.spi.AxiomStatementBuilder;
import com.evolveum.axiom.lang.spi.SourceLocation;
import com.evolveum.axiom.lang.spi.AxiomStatementImpl.Factory;
import com.evolveum.axiom.reactor.Requirement;

public abstract class StatementContextImpl<V> implements StatementContext<V>, StatementTreeBuilder, IdentifierSpaceHolder {
Expand Down
Expand Up @@ -8,6 +8,7 @@
import com.evolveum.axiom.api.AxiomIdentifier;
import com.evolveum.axiom.lang.api.AxiomItemDefinition;
import com.evolveum.axiom.lang.spi.AxiomStatement;
import com.evolveum.axiom.lang.spi.AxiomStatementBuilder;
import com.evolveum.axiom.reactor.Requirement;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
Expand Down
@@ -1,4 +1,4 @@
package com.evolveum.axiom.lang.impl;
package com.evolveum.axiom.lang.spi;

import java.util.List;

Expand All @@ -7,7 +7,6 @@
import com.evolveum.axiom.lang.api.AxiomBuiltIn;
import com.evolveum.axiom.lang.api.AxiomItemDefinition;
import com.evolveum.axiom.lang.api.AxiomTypeDefinition;
import com.evolveum.axiom.lang.spi.AxiomStatement;
import com.google.common.collect.Multimap;

public class AbstractAxiomBaseDefinition extends AxiomStatementImpl<AxiomIdentifier> implements AxiomBaseDefinition {
Expand Down
@@ -1,12 +1,11 @@
package com.evolveum.axiom.lang.impl;
package com.evolveum.axiom.lang.spi;

import java.util.List;

import com.evolveum.axiom.api.AxiomIdentifier;
import com.evolveum.axiom.lang.api.AxiomBuiltIn;
import com.evolveum.axiom.lang.api.AxiomItemDefinition;
import com.evolveum.axiom.lang.api.AxiomTypeDefinition;
import com.evolveum.axiom.lang.spi.AxiomStatement;
import com.google.common.collect.Multimap;

public class AxiomItemDefinitionImpl extends AbstractAxiomBaseDefinition implements AxiomItemDefinition {
Expand Down
@@ -1,4 +1,4 @@
package com.evolveum.axiom.lang.impl;
package com.evolveum.axiom.lang.spi;

import com.evolveum.axiom.concepts.Lazy;

Expand All @@ -10,8 +10,7 @@
import com.evolveum.axiom.api.AxiomIdentifier;
import com.evolveum.axiom.lang.api.AxiomBuiltIn;
import com.evolveum.axiom.lang.api.AxiomItemDefinition;
import com.evolveum.axiom.lang.impl.AxiomStatementImpl.Factory;
import com.evolveum.axiom.lang.spi.AxiomStatement;
import com.evolveum.axiom.lang.spi.AxiomStatementImpl.Factory;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Lists;
import com.google.common.collect.Multimap;
Expand Down
Expand Up @@ -4,13 +4,12 @@
* This work is dual-licensed under the Apache License 2.0
* and European Union Public License. See LICENSE file for details.
*/
package com.evolveum.axiom.lang.impl;
package com.evolveum.axiom.lang.spi;

import java.util.Collection;
import java.util.List;
import com.evolveum.axiom.api.AxiomIdentifier;
import com.evolveum.axiom.lang.api.AxiomItemDefinition;
import com.evolveum.axiom.lang.spi.AxiomStatement;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMultimap;
import com.google.common.collect.Multimap;
Expand Down Expand Up @@ -57,7 +56,7 @@ public String toString() {
return keyword + "{value=" + value + "}";
}

interface Factory<V, I extends AxiomStatement<V>> {
public interface Factory<V, I extends AxiomStatement<V>> {

I create(AxiomIdentifier type, V value, List<AxiomStatement<?>> children,
Multimap<AxiomIdentifier, AxiomStatement<?>> keywordMap);
Expand Down
@@ -1,4 +1,4 @@
package com.evolveum.axiom.lang.impl;
package com.evolveum.axiom.lang.spi;

import java.util.Collection;
import java.util.List;
Expand All @@ -16,7 +16,6 @@
import com.evolveum.axiom.lang.api.AxiomTypeDefinition;
import com.evolveum.axiom.lang.api.Identifiable;
import com.evolveum.axiom.lang.api.AxiomBuiltIn.Item;
import com.evolveum.axiom.lang.spi.AxiomStatement;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableMap.Builder;
import com.google.common.collect.Multimap;
Expand Down
Expand Up @@ -3,10 +3,7 @@
import java.util.Optional;
import java.util.function.Supplier;

import org.jetbrains.annotations.Nullable;

import com.evolveum.axiom.lang.impl.RuleErrorMessage;
import com.evolveum.axiom.lang.spi.AxiomStatement;
import com.google.common.base.Preconditions;


Expand Down

0 comments on commit d3ea298

Please sign in to comment.