@Test public void testGetParentSegmentOf() throws Exception { AtlasPath path = new AtlasPath("/orders/order<4>/product<6>/name"); List<SegmentContext> segments = path.getSegments(true); assertEquals(null, path.getParentSegmentOf(segments.get(0))); assertEquals(segments.get(0), path.getParentSegmentOf(segments.get(1))); assertEquals(segments.get(1), path.getParentSegmentOf(segments.get(2))); assertEquals(segments.get(2), path.getParentSegmentOf(segments.get(3))); assertEquals(segments.get(3), path.getParentSegmentOf(segments.get(4))); }
public SegmentContext getParentSegmentOf(SegmentContext sc) { for (int i=0; i<this.segmentContexts.size(); i++) { if (this.segmentContexts.get(i) == sc) { if (sc.isRoot()) { return null; } return this.segmentContexts.get(i-1); } } return null; }
AtlasPath { public SegmentContext getParentSegmentOf(SegmentContext sc) { for (int i=0; i<this.segmentContexts.size(); i++) { if (this.segmentContexts.get(i) == sc) { if (sc.isRoot()) { return null; } return this.segmentContexts.get(i-1); } } return null; } }
AtlasPath { public SegmentContext getParentSegmentOf(SegmentContext sc) { for (int i=0; i<this.segmentContexts.size(); i++) { if (this.segmentContexts.get(i) == sc) { if (sc.isRoot()) { return null; } return this.segmentContexts.get(i-1); } } return null; } AtlasPath(String p); protected  AtlasPath(List<SegmentContext> segments); private  AtlasPath(); }
AtlasPath { public SegmentContext getParentSegmentOf(SegmentContext sc) { for (int i=0; i<this.segmentContexts.size(); i++) { if (this.segmentContexts.get(i) == sc) { if (sc.isRoot()) { return null; } return this.segmentContexts.get(i-1); } } return null; } AtlasPath(String p); protected  AtlasPath(List<SegmentContext> segments); private  AtlasPath(); static Field extractChildren(Field f, String path); static void setCollectionIndexRecursively(FieldGroup group, int segmentIndex, int index); AtlasPath appendField(String fieldExpression); List<SegmentContext> getSegments(boolean includeRoot); Boolean isRoot(); SegmentContext getRootSegment(); Boolean isCollectionRoot(); Boolean hasCollectionRoot(); SegmentContext getLastSegment(); SegmentContext getLastCollectionSegment(); SegmentContext getLastSegmentParent(); AtlasPath getLastSegmentParentPath(); SegmentContext getParentSegmentOf(SegmentContext sc); boolean hasCollection(); boolean isIndexedCollection(); SegmentContext setCollectionIndex(int segmentIndex, Integer collectionIndex); List<SegmentContext> getCollectionSegments(boolean includeRoot); SegmentContext setVacantCollectionIndex(Integer collectionIndex); String getSegmentPath(SegmentContext sc); @Override String toString(); String getOriginalPath(); int getCollectionSegmentCount(); }
AtlasPath { public SegmentContext getParentSegmentOf(SegmentContext sc) { for (int i=0; i<this.segmentContexts.size(); i++) { if (this.segmentContexts.get(i) == sc) { if (sc.isRoot()) { return null; } return this.segmentContexts.get(i-1); } } return null; } AtlasPath(String p); protected  AtlasPath(List<SegmentContext> segments); private  AtlasPath(); static Field extractChildren(Field f, String path); static void setCollectionIndexRecursively(FieldGroup group, int segmentIndex, int index); AtlasPath appendField(String fieldExpression); List<SegmentContext> getSegments(boolean includeRoot); Boolean isRoot(); SegmentContext getRootSegment(); Boolean isCollectionRoot(); Boolean hasCollectionRoot(); SegmentContext getLastSegment(); SegmentContext getLastCollectionSegment(); SegmentContext getLastSegmentParent(); AtlasPath getLastSegmentParentPath(); SegmentContext getParentSegmentOf(SegmentContext sc); boolean hasCollection(); boolean isIndexedCollection(); SegmentContext setCollectionIndex(int segmentIndex, Integer collectionIndex); List<SegmentContext> getCollectionSegments(boolean includeRoot); SegmentContext setVacantCollectionIndex(Integer collectionIndex); String getSegmentPath(SegmentContext sc); @Override String toString(); String getOriginalPath(); int getCollectionSegmentCount(); static final String PATH_SEPARATOR; static final char PATH_SEPARATOR_CHAR; static final String PATH_SEPARATOR_ESCAPED; static final String PATH_ARRAY_START; static final String PATH_ARRAY_END; static final String PATH_LIST_START; static final String PATH_LIST_END; static final String PATH_MAP_START; static final String PATH_MAP_END; static final String PATH_ATTRIBUTE_PREFIX; static final String PATH_NAMESPACE_SEPARATOR; }