Skip to content

Commit

Permalink
UniformItemPath: Make impl package visible
Browse files Browse the repository at this point in the history
Signed-off-by: Tony Tkacik <tony.tkacik@evolveum.com>
  • Loading branch information
tonydamage committed Mar 6, 2020
1 parent 5b32c5b commit 7f7b2fe
Show file tree
Hide file tree
Showing 6 changed files with 47 additions and 35 deletions.
Expand Up @@ -14,14 +14,14 @@
import java.util.List;
import java.util.Map;

import javax.xml.namespace.QName;

/**
* @author semancik
*
*/
public interface UniformItemPath extends Serializable, Cloneable, ShortDumpable, ItemPath {

UniformItemPath EMPTY_PATH = UniformItemPathImpl.EMPTY_PATH;

@NotNull
List<ItemPathSegment> getSegments();

Expand Down Expand Up @@ -95,4 +95,30 @@ default UniformItemPath rest() {
void setNamespaceMap(Map<String, String> namespaceMap);

Map<String, String> getNamespaceMap();

static UniformItemPath empty() {
return UniformItemPathImpl.EMPTY_PATH;
}

static UniformItemPath create(Object... segments) {
return UniformItemPathImpl.create(segments);
}

static @NotNull UniformItemPath from(ItemPath path) {
return UniformItemPathImpl.fromItemPath(path);
}

static ItemPathSegment createSegment(QName qname, boolean variable) {
if (ParentPathSegment.QNAME.equals(qname)) {
return new ParentPathSegment();
} else if (ObjectReferencePathSegment.QNAME.equals(qname)) {
return new ObjectReferencePathSegment();
} else if (IdentifierPathSegment.QNAME.equals(qname)) {
return new IdentifierPathSegment();
} else if (variable) {
return new VariableItemPathSegment(qname);
} else {
return new NameItemPathSegment(qname);
}
}
}
Expand Up @@ -18,7 +18,7 @@
* @author semancik
*
*/
public class UniformItemPathImpl implements UniformItemPath {
class UniformItemPathImpl implements UniformItemPath {

public static final UniformItemPathImpl EMPTY_PATH = UniformItemPathImpl.createEmpty();

Expand All @@ -42,20 +42,6 @@ public static UniformItemPathImpl fromItemPath(ItemPath itemPath) {
}
}

public static ItemPathSegment createSegment(QName qname, boolean variable) {
if (ParentPathSegment.QNAME.equals(qname)) {
return new ParentPathSegment();
} else if (ObjectReferencePathSegment.QNAME.equals(qname)) {
return new ObjectReferencePathSegment();
} else if (IdentifierPathSegment.QNAME.equals(qname)) {
return new IdentifierPathSegment();
} else if (variable) {
return new VariableItemPathSegment(qname);
} else {
return new NameItemPathSegment(qname);
}
}

public void setNamespaceMap(Map<String, String> namespaceMap) {
this.namespaceMap = namespaceMap;
}
Expand Down Expand Up @@ -216,7 +202,7 @@ private void add(Object object) {
}

private void add(QName qname) {
this.segments.add(createSegment(qname, false));
this.segments.add(UniformItemPath.createSegment(qname, false));
}

private void add(ItemPathSegment segment) {
Expand Down Expand Up @@ -426,4 +412,8 @@ public String toString() {
shortDump(sb);
return sb.toString();
}

static UniformItemPath create(Object... segments) {
return new UniformItemPathImpl(segments);
}
}
Expand Up @@ -16,7 +16,6 @@
import com.evolveum.midpoint.prism.impl.crypto.KeyStoreBasedProtectorImpl;
import com.evolveum.midpoint.prism.impl.marshaller.*;
import com.evolveum.midpoint.prism.impl.path.CanonicalItemPathImpl;
import com.evolveum.midpoint.prism.path.UniformItemPathImpl;
import com.evolveum.midpoint.prism.impl.schema.SchemaDefinitionFactory;
import com.evolveum.midpoint.prism.impl.schema.SchemaFactoryImpl;
import com.evolveum.midpoint.prism.impl.schema.SchemaRegistryImpl;
Expand Down Expand Up @@ -563,12 +562,12 @@ public ParsingContext createParsingContextForCompatibilityMode() {

@Override
public UniformItemPath emptyPath() {
return UniformItemPathImpl.EMPTY_PATH;
return UniformItemPath.empty();
}

@Override
public UniformItemPath path(Object... namesOrIdsOrSegments) {
return new UniformItemPathImpl(namesOrIdsOrSegments);
return UniformItemPath.create(namesOrIdsOrSegments);
}

@Override
Expand Down Expand Up @@ -601,17 +600,17 @@ public KeyStoreBasedProtector createProtector(KeyStoreBasedProtectorBuilder buil
@NotNull
@Override
public UniformItemPath toUniformPath(ItemPath path) {
return UniformItemPathImpl.fromItemPath(path);
return UniformItemPath.from(path);
}

@Override
public UniformItemPath toUniformPathKeepNull(ItemPath path) {
return path != null ? UniformItemPathImpl.fromItemPath(path) : null;
return path != null ? UniformItemPath.from(path) : null;
}

@Override
public UniformItemPath toUniformPath(ItemPathType path) {
return UniformItemPathImpl.fromItemPath(path.getItemPath());
return UniformItemPath.from(path.getItemPath());
}

@Override
Expand Down
Expand Up @@ -8,7 +8,6 @@
package com.evolveum.midpoint.prism.impl.marshaller;

import com.evolveum.midpoint.prism.PrismConstants;
import com.evolveum.midpoint.prism.path.UniformItemPathImpl;
import com.evolveum.midpoint.prism.path.*;
import com.evolveum.midpoint.prism.impl.xml.GlobalDynamicNamespacePrefixMapper;
import com.evolveum.midpoint.util.DOMUtil;
Expand Down Expand Up @@ -218,11 +217,11 @@ private String findNamespace(String prefix, Node domNode, Map<String, String> na
//region Serializing

public static String serializeWithDeclarations(@NotNull ItemPath itemPath) {
return new ItemPathHolder(UniformItemPathImpl.fromItemPath(itemPath)).getXPathWithDeclarations();
return new ItemPathHolder(UniformItemPath.from(itemPath)).getXPathWithDeclarations();
}

public static String serializeWithForcedDeclarations(@NotNull ItemPath itemPath) {
return new ItemPathHolder(UniformItemPathImpl.fromItemPath(itemPath), true).getXPathWithDeclarations();
return new ItemPathHolder(UniformItemPath.from(itemPath), true).getXPathWithDeclarations();
}

private ItemPathHolder(@NotNull UniformItemPath itemPath) {
Expand Down Expand Up @@ -398,7 +397,7 @@ public Map<String, String> getNamespaceMap() {
}

public static Element serializeToElement(ItemPath path, QName elementQName, Document document) {
return new ItemPathHolder(UniformItemPathImpl.fromItemPath(path)).toElement(elementQName, document);
return new ItemPathHolder(UniformItemPath.from(path)).toElement(elementQName, document);
}

public Element toElement(QName elementQName, Document document) {
Expand Down Expand Up @@ -443,10 +442,10 @@ public UniformItemPath toItemPath() {
} else {
QName qName = segment.getQName();
boolean variable = segment.isVariable();
segments.add(UniformItemPathImpl.createSegment(qName, variable));
segments.add(UniformItemPath.createSegment(qName, variable));
}
}
UniformItemPath path = new UniformItemPathImpl(segments);
UniformItemPath path = UniformItemPath.create(segments);
path.setNamespaceMap(explicitNamespaceDeclarations);
return path;
}
Expand Down
Expand Up @@ -40,8 +40,8 @@ public class TestPath extends AbstractPrismTest {
*/
@Test
public void testEmptyPath() {
System.out.println("UniformItemPath.EMPTY_PATH = " + UniformItemPath.EMPTY_PATH);
System.out.println("UniformItemPathImpl.EMPTY_PATH = " + UniformItemPathImpl.EMPTY_PATH);
System.out.println("UniformItemPath.empty() = " + UniformItemPath.empty());
assertNotNull(UniformItemPath.empty());
}

@Test
Expand Down
Expand Up @@ -21,7 +21,6 @@
import com.evolveum.midpoint.prism.path.ItemName;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.prism.path.UniformItemPath;
import com.evolveum.midpoint.prism.path.UniformItemPathImpl;
import com.evolveum.midpoint.schema.*;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;

Expand Down Expand Up @@ -1696,7 +1695,6 @@ public void testEmptyPath() {
* UniformItemPath.EMPTY_PATH =
* UniformItemPathImpl.EMPTY_PATH =
*/
System.out.println("UniformItemPath.EMPTY_PATH = " + UniformItemPath.EMPTY_PATH);
System.out.println("UniformItemPathImpl.EMPTY_PATH = " + UniformItemPathImpl.EMPTY_PATH);
System.out.println("UniformItemPath.EMPTY_PATH = " + UniformItemPath.empty());
}
}

0 comments on commit 7f7b2fe

Please sign in to comment.