Class HashIdCxtImpl

java.lang.Object
org.aksw.jenax.reprogen.hashid.HashIdCxtImpl
All Implemented Interfaces:
HashIdCxt

public class HashIdCxtImpl extends Object implements HashIdCxt
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected int
     
    protected BiPredicate<? super org.apache.jena.rdf.model.RDFNode,? super Integer>
     
    protected BiFunction<? super org.apache.jena.rdf.model.RDFNode,? super HashIdCxt,? extends com.google.common.hash.HashCode>
     
    protected Function<com.google.common.hash.HashCode,String>
     
    protected com.google.common.hash.HashFunction
     
    protected Set<org.apache.jena.rdf.model.RDFNode>
    The set of reachable items not yet in processing
    protected Set<org.apache.jena.rdf.model.RDFNode>
    The set of items for which processing was requested (items are thus in processing or processed state)
    protected Map<org.apache.jena.rdf.model.RDFNode,com.google.common.hash.HashCode>
    Items that are fully processed have an entry of the processing result in this map
    protected Map<org.apache.jena.rdf.model.RDFNode,String>
    The set of items in traversed state.
    protected boolean
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    HashIdCxtImpl(com.google.common.hash.HashFunction hashFn, BiFunction<? super org.apache.jena.rdf.model.RDFNode,? super HashIdCxt,? extends com.google.common.hash.HashCode> globalProcessor)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    declarePending(org.apache.jena.rdf.model.RDFNode node)
    Declare traversal of a node.
    boolean
    declareProcessing(org.apache.jena.rdf.model.RDFNode node)
    Declaration of processing implies a call to declareTraversal.
    BiFunction<? super org.apache.jena.rdf.model.RDFNode,? super HashIdCxt,? extends com.google.common.hash.HashCode>
     
    getHashAsString(com.google.common.hash.HashCode hashCode)
    Default approach for converting a HashCode into string representation, such as by applying base64url encoding
    getHashAsString(org.apache.jena.rdf.model.RDFNode rdfNode)
     
    com.google.common.hash.HashFunction
    The hashing used in this context
    com.google.common.hash.HashCode
    getHashId(org.apache.jena.rdf.model.RDFNode node)
     
    Map<org.apache.jena.rdf.model.RDFNode,com.google.common.hash.HashCode>
     
    Set<org.apache.jena.rdf.model.RDFNode>
     
    getStringId(org.apache.jena.rdf.model.RDFNode node)
     
    Map<org.apache.jena.rdf.model.RDFNode,String>
     
    boolean
    isPending(org.apache.jena.rdf.model.RDFNode node)
     
    boolean
    isVisited(org.apache.jena.rdf.model.RDFNode node)
     
    com.google.common.hash.HashCode
    putHashId(org.apache.jena.rdf.model.RDFNode node, com.google.common.hash.HashCode hashCode)
     
    putStringId(org.apache.jena.rdf.model.RDFNode node, String str)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.aksw.jenax.reprogen.hashid.HashIdCxt

    getNodeMapping
  • Field Details

    • hashFn

      protected com.google.common.hash.HashFunction hashFn
    • globalProcessor

      protected BiFunction<? super org.apache.jena.rdf.model.RDFNode,? super HashIdCxt,? extends com.google.common.hash.HashCode> globalProcessor
    • processing

      protected Set<org.apache.jena.rdf.model.RDFNode> processing
      The set of items for which processing was requested (items are thus in processing or processed state)
    • pending

      protected Set<org.apache.jena.rdf.model.RDFNode> pending
      The set of reachable items not yet in processing
    • rdfNodeToHashCode

      protected Map<org.apache.jena.rdf.model.RDFNode,com.google.common.hash.HashCode> rdfNodeToHashCode
      Items that are fully processed have an entry of the processing result in this map
    • rdfNodeToString

      protected Map<org.apache.jena.rdf.model.RDFNode,String> rdfNodeToString
      The set of items in traversed state.
    • hashCodeEncoder

      protected Function<com.google.common.hash.HashCode,String> hashCodeEncoder
    • useInnerIris

      protected boolean useInnerIris
    • filterKeep

      protected BiPredicate<? super org.apache.jena.rdf.model.RDFNode,? super Integer> filterKeep
    • depth

      protected int depth
  • Constructor Details

    • HashIdCxtImpl

      public HashIdCxtImpl(com.google.common.hash.HashFunction hashFn, BiFunction<? super org.apache.jena.rdf.model.RDFNode,? super HashIdCxt,? extends com.google.common.hash.HashCode> globalProcessor)
  • Method Details

    • declareProcessing

      public boolean declareProcessing(org.apache.jena.rdf.model.RDFNode node)
      Declaration of processing implies a call to declareTraversal. Conversely, it is possible to traverse through nodes without triggering processing.
      Specified by:
      declareProcessing in interface HashIdCxt
      Returns:
    • putHashId

      public com.google.common.hash.HashCode putHashId(org.apache.jena.rdf.model.RDFNode node, com.google.common.hash.HashCode hashCode)
      Specified by:
      putHashId in interface HashIdCxt
    • getHashId

      public com.google.common.hash.HashCode getHashId(org.apache.jena.rdf.model.RDFNode node)
      Specified by:
      getHashId in interface HashIdCxt
    • getGlobalProcessor

      public BiFunction<? super org.apache.jena.rdf.model.RDFNode,? super HashIdCxt,? extends com.google.common.hash.HashCode> getGlobalProcessor()
      Specified by:
      getGlobalProcessor in interface HashIdCxt
    • getHashFunction

      public com.google.common.hash.HashFunction getHashFunction()
      Description copied from interface: HashIdCxt
      The hashing used in this context
      Specified by:
      getHashFunction in interface HashIdCxt
      Returns:
    • getHashIdMapping

      public Map<org.apache.jena.rdf.model.RDFNode,com.google.common.hash.HashCode> getHashIdMapping()
      Specified by:
      getHashIdMapping in interface HashIdCxt
    • isVisited

      public boolean isVisited(org.apache.jena.rdf.model.RDFNode node)
      Specified by:
      isVisited in interface HashIdCxt
    • getStringId

      public String getStringId(org.apache.jena.rdf.model.RDFNode node)
      Specified by:
      getStringId in interface HashIdCxt
    • putStringId

      public String putStringId(org.apache.jena.rdf.model.RDFNode node, String str)
      Specified by:
      putStringId in interface HashIdCxt
    • getStringIdMapping

      public Map<org.apache.jena.rdf.model.RDFNode,String> getStringIdMapping()
      Specified by:
      getStringIdMapping in interface HashIdCxt
    • getHashAsString

      public String getHashAsString(com.google.common.hash.HashCode hashCode)
      Description copied from interface: HashIdCxt
      Default approach for converting a HashCode into string representation, such as by applying base64url encoding
      Specified by:
      getHashAsString in interface HashIdCxt
      Returns:
    • getHashAsString

      public String getHashAsString(org.apache.jena.rdf.model.RDFNode rdfNode)
      Specified by:
      getHashAsString in interface HashIdCxt
    • declarePending

      public boolean declarePending(org.apache.jena.rdf.model.RDFNode node)
      Description copied from interface: HashIdCxt
      Declare traversal of a node. Traversal is the search for nodes subject to processing. A node may be declared as traversed any number of times - in contrast to declareProcessing which may only be invoked once on an unprocessed node.
      Specified by:
      declarePending in interface HashIdCxt
      Returns:
    • isPending

      public boolean isPending(org.apache.jena.rdf.model.RDFNode node)
      Specified by:
      isPending in interface HashIdCxt
    • getPending

      public Set<org.apache.jena.rdf.model.RDFNode> getPending()
      Specified by:
      getPending in interface HashIdCxt