Class StorageNodeForwarding<D,​C,​V,​X extends StorageNode<D,​C,​V>>

    • Constructor Detail

      • StorageNodeForwarding

        public StorageNodeForwarding()
    • Method Detail

      • getDelegate

        protected abstract X getDelegate()
      • isDelegate

        public boolean isDelegate()
        Description copied from interface: StorageNode
        Attempt to access a store as a map. The StorageNode and the store must be of the appropriate types in order for this operation to succeed.
        Specified by:
        isDelegate in interface StorageNode<D,​C,​V>
        Returns:
      • isAltNode

        public boolean isAltNode()
        Description copied from interface: StorageNode
        Whether this storage node stores are a sequences of alternatives Experimental method; may be replaced by a generic getStoreType() method that returns e.g Alt.class, Set.class, etc.
        Specified by:
        isAltNode in interface StorageNode<D,​C,​V>
        Returns:
      • isMapNode

        public boolean isMapNode()
        Description copied from interface: StorageNode
        Whether this storage node stores are a maps Experimental method; may be replaced by a generic getStoreType() method that returns e.g Alt.class, Set.class, etc.
        Specified by:
        isMapNode in interface StorageNode<D,​C,​V>
        Returns:
      • isSetNode

        public boolean isSetNode()
        Description copied from interface: StorageNode
        Whether this storage node stores are sets Experimental method; may be replaced by a generic getStoreType() method that returns e.g Alt.class, Set.class, etc.
        Specified by:
        isSetNode in interface StorageNode<D,​C,​V>
        Returns:
      • getKeyTupleIdxs

        public int[] getKeyTupleIdxs()
        Description copied from interface: StorageNode
        The component indexes by which this node indexes May be empty but never null
        Specified by:
        getKeyTupleIdxs in interface StorageNode<D,​C,​V>
        Returns:
      • getTupleAccessor

        public org.aksw.commons.tuple.TupleAccessor<D,​C> getTupleAccessor()
        Description copied from interface: StorageNode
        Future: Allow the storageNode to answer how efficiently it can answer the constraints in a given constraint list E.g. O(1) or O(log(n)) or O(n)
        Specified by:
        getTupleAccessor in interface StorageNode<D,​C,​V>
        Returns:
      • streamerForKeysAsComponent

        public <T> Streamer<V,​C> streamerForKeysAsComponent​(T pattern,
                                                                  org.aksw.commons.tuple.TupleAccessorCore<? super T,​? extends C> accessor)
        Description copied from interface: StorageNode
        Compiles from a given pattern a function that can stream the matching keys from the appropriate store. The keys must be instances of the component type otherwise an exception is raised
        Specified by:
        streamerForKeysAsComponent in interface StorageNode<D,​C,​V>
        Returns:
      • streamerForKeysAsTuples

        public <T> Streamer<V,​List<C>> streamerForKeysAsTuples​(T pattern,
                                                                     org.aksw.commons.tuple.TupleAccessorCore<? super T,​? extends C> accessor)
        Description copied from interface: StorageNode
        Compiles from a given pattern a function that can stream the matching keys from the appropriate store. The keys must be instances of the component type otherwise an exception is raised if getKeyTupleIdxs().length == 0 then returns a single tuple that projects no components
        Specified by:
        streamerForKeysAsTuples in interface StorageNode<D,​C,​V>
        Returns:
      • streamerForKeys

        public <T> Streamer<V,​?> streamerForKeys​(T pattern,
                                                       org.aksw.commons.tuple.TupleAccessorCore<? super T,​? extends C> accessor)
        Specified by:
        streamerForKeys in interface StorageNode<D,​C,​V>
      • streamerForValues

        public <T> Streamer<V,​?> streamerForValues​(T pattern,
                                                         org.aksw.commons.tuple.TupleAccessorCore<? super T,​? extends C> accessor)
        Description copied from interface: StorageNode
        Returns an object that can extract the stream of values at an index node under constraints map: { entry.value | entry in map and entry.key matches condition} leafSet: set.entries.stream() A leaf set does not have any keys that could affect the result stream
        Specified by:
        streamerForValues in interface StorageNode<D,​C,​V>
        Returns:
      • streamEntries

        public <T> java.util.stream.Stream<?> streamEntries​(V store,
                                                            T tupleLike,
                                                            org.aksw.commons.tuple.TupleAccessorCore<? super T,​? extends C> tupleAccessor)
        Description copied from interface: StorageNode
        Stream all entries under equality constraints obtained from a tuple-like pattern
        Specified by:
        streamEntries in interface StorageNode<D,​C,​V>
        Returns: