/** * * @param sourceId * @param type * @param maxVersion * @param last * @return */ public static SearchByEdgeType createSearchByEdge( final Id sourceId, final String type, final long maxVersion, final Edge last ) { return new SimpleSearchByEdgeType( sourceId, type, maxVersion, SearchByEdgeType.Order.DESCENDING, last ); }
@Override public Iterator<MarkedEdge> loadEdges( final ShardedEdgeSerialization serialization, final EdgeColumnFamilies edgeColumnFamilies, final ApplicationScope scope, final Collection<Shard> shards, final long maxValue, final SearchByEdgeType.Order order ) { final Id sourceId = nodes[0].id; final String edgeType = types[0]; final SearchByEdgeType search = new SimpleSearchByEdgeType( sourceId, edgeType, maxValue, order, Optional.<Edge>absent()); return serialization.getEdgesFromSource( edgeColumnFamilies, scope, search, shards ); }
@Override public Iterator<MarkedEdge> loadEdges( final ShardedEdgeSerialization serialization, final EdgeColumnFamilies edgeColumnFamilies, final ApplicationScope scope, final Collection<Shard> shards, final long maxValue, final SearchByEdgeType.Order order ) { final Id targetId = nodes[0].id; final String edgeType = types[0]; final SearchByEdgeType search = new SimpleSearchByEdgeType( targetId, edgeType, maxValue, order, Optional.<Edge>absent()); return serialization.getEdgesToTarget( edgeColumnFamilies, scope, search, shards ); }
/** * * @param sourceId * @param type * @param maxVersion * @param last * @return */ public static SearchByEdgeType createSearchByEdgeUnfiltered( final Id sourceId, final String type, final long maxVersion, final Edge last ) { return new SimpleSearchByEdgeType( sourceId, type, maxVersion, SearchByEdgeType.Order.DESCENDING, Optional.fromNullable( last ) , false ); }
@Override public Observable<Edge> edgesFromSourceDescending( final GraphManager gm, final Id sourceNode, final Optional<String> edgeTypeInput, final Optional<Edge> resume ) { final Observable<String> edgeTypes = edgeTypeInput.isPresent()? Observable.just( edgeTypeInput.get() ): gm.getEdgeTypesFromSource( new SimpleSearchEdgeType( sourceNode, null, null ) ); return edgeTypes.flatMap( edgeType -> { if (logger.isTraceEnabled()) { logger.trace("Loading edges of edgeType {} from {}", edgeType, sourceNode); } return gm.loadEdgesFromSource( new SimpleSearchByEdgeType( sourceNode, edgeType, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, resume ) ); } ); }
/** * Get all edges from the source */ @Override public Observable<Edge> edgesToTarget(final GraphManager gm, final Id targetNode, boolean filterMarked) { return gm.getEdgeTypesToTarget( new SimpleSearchEdgeType( targetNode, null, null ) ) .flatMap( edgeType -> { if (logger.isTraceEnabled()) { logger.trace("Loading edges of edgeType {} to {}", edgeType, targetNode); } return gm.loadEdgesToTarget( new SimpleSearchByEdgeType( targetNode, edgeType, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent(), filterMarked ) ); } ); }
/** * Get all edges from the source */ @Override public Observable<Edge> edgesFromSourceDescending(final GraphManager gm, final Id sourceNode, boolean filterMarked) { final Observable<String> edgeTypes = gm.getEdgeTypesFromSource( new SimpleSearchEdgeType( sourceNode, null, null ) ); return edgeTypes.flatMap( edgeType -> { if (logger.isTraceEnabled()) { logger.trace("Loading edges of edgeType {} from {}", edgeType, sourceNode); } return gm.loadEdgesFromSource( new SimpleSearchByEdgeType( sourceNode, edgeType, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent(), filterMarked ) ); } ); }
@Override protected Iterator<MarkedEdge> getIteratorFullRange( final Collection<Shard> readShards ) { final SearchByEdgeType searchFullRange = new SimpleSearchByEdgeType( edgeType.getNode(), edgeType.getType(), Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.absent(), false ); return shardedEdgeSerialization.getEdgesFromSource( edgeColumnFamilies, scope, searchFullRange, readShards ); } };
@Override protected Iterator<MarkedEdge> getIteratorFullRange( final Collection<Shard> readShards ) { final SearchByEdgeType edgeTypeFullRange = new SimpleSearchByEdgeType( edgeType.getNode(), edgeType.getType(), Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.absent(), false ); return shardedEdgeSerialization.getEdgesToTarget( edgeColumnFamilies, scope, edgeTypeFullRange, readShards ); }
@Override public Observable<MarkedEdge> doSearch( final GraphManager manager ) { return manager.loadEdgesToTarget( new SimpleSearchByEdgeType( targetId, "test", System.currentTimeMillis(), SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent() ) ); } };
@Override public Observable<MarkedEdge> doSearch( final GraphManager manager ) { return manager.loadEdgesToTarget( new SimpleSearchByEdgeType( targetId, "test", System.currentTimeMillis(), SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent() ) ); } };
@Override public Observable<MarkedEdge> doSearch( final GraphManager manager ) { return manager.loadEdgesFromSource( new SimpleSearchByEdgeType( sourceId, deleteEdgeType, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent(), false ) ); } };
@Override public Observable<MarkedEdge> doSearch( final GraphManager manager ) { return manager.loadEdgesFromSource( new SimpleSearchByEdgeType( sourceId, deleteEdgeType, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent(), false ) ); } };
@Override public Observable<MarkedEdge> doSearch( final GraphManager manager ) { return manager.loadEdgesFromSource( new SimpleSearchByEdgeType( sourceId, "test", System.currentTimeMillis(), SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent() ) ); } };
@Override public Observable<MarkedEdge> doSearch( final GraphManager manager ) { return manager.loadEdgesFromSource( new SimpleSearchByEdgeType( sourceId, "test", System.currentTimeMillis(), SearchByEdgeType.Order.DESCENDING, Optional .<Edge>absent()) ); } };
@Override public Observable<MarkedEdge> doSearch( final GraphManager manager ) { return manager.loadEdgesFromSource( new SimpleSearchByEdgeType( sourceId, edgeType, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent() ) ); } };
/** * Use Graph to get old appinfos from the old and deprecated System App. */ public Observable<org.apache.usergrid.persistence.model.entity.Entity> getOldAppInfos() { final ApplicationScope systemAppScope = getApplicationScope( SYSTEM_APP_ID ); final EntityCollectionManager systemCollectionManager = entityCollectionManagerFactory.createCollectionManager( systemAppScope ); final GraphManager gm = graphManagerFactory.createEdgeManager( systemAppScope ); String edgeType = CpNamingUtils.getEdgeTypeFromCollectionName( "appinfos" ); Id rootAppId = systemAppScope.getApplication(); final SimpleSearchByEdgeType simpleSearchByEdgeType = new SimpleSearchByEdgeType( rootAppId, edgeType, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.absent() ); Observable<org.apache.usergrid.persistence.model.entity.Entity> entityObs = gm.loadEdgesFromSource( simpleSearchByEdgeType ).flatMap( edge -> { final Id appInfoId = edge.getTargetNode(); return systemCollectionManager.load( appInfoId ).filter( entity -> ( entity != null ) ); } ); return entityObs; }
new SimpleSearchByEdgeType( rootAppId, edgeType, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.absent() ) ).flatMap(edge -> {
new SimpleSearchByEdgeType( managementId, edgeType, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent() ) );
gm.getEdgeTypesToTarget( new SimpleSearchEdgeType( cpHeadEntity.getId(), edgeType, null ) ) .flatMap( edgeType1 -> gm.loadEdgesToTarget( new SimpleSearchByEdgeType( cpHeadEntity.getId(), edgeType1, Long.MAX_VALUE, SearchByEdgeType.Order.DESCENDING, Optional.<Edge>absent() ) ) );