Interface ISlotVisitor<T>

Type Parameters:
T - The SSSOM object whose slots this visitor is to visit.
All Known Implementing Classes:
AnnotationVisitor, SetMerger, SlotExtractor, SlotVisitorBase

public interface ISlotVisitor<T>
A visitor interface to visit the different types of metadata slots of a SSSOM object.
  • Method Details

    • visit

      void visit(Slot<T> slot, T object, Object value)
      Visits a generic slot.

      This method is normally not used as all slots in a SSSOM object have more precise types. But it can be used to implement behaviours that should be common to several slot types.

      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      void visit(StringSlot<T> slot, T object, String value)
      Visits a string-typed slot.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      void visit(StringSlot<T> slot, T object, List<String> values)
      Visits a multi-valued string-typed slot.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      values - The values of the slot.
    • visit

      void visit(URISlot<T> slot, T object, String value)
      Visits a URI-typed slot.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      void visit(URISlot<T> slot, T object, List<String> values)
      Visits a multi-valued URI-typed slot.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      values - The values of the slot.
    • visit

      void visit(EntityReferenceSlot<T> slot, T object, String value)
      Visits a slot that holds an entity reference.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      void visit(EntityReferenceSlot<T> slot, T object, List<String> values)
      Visits a multi-valued slot that holds entity references.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      values - The values of the slot.
    • visit

      void visit(DoubleSlot<T> slot, T object, Double value)
      Visits a double-typed slot.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      void visit(DateSlot<T> slot, T object, LocalDate value)
      Visits a date-typed slot.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      void visit(EntityTypeSlot<T> slot, T object, EntityType value)
      Visits a slot that holds an entity type enumeration value.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      void visit(MappingCardinalitySlot<T> slot, T object, MappingCardinality value)
      Visits a slot that holds a mapping cardinality enumeration value.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      void visit(PredicateModifierSlot<T> slot, T object, PredicateModifier value)
      Visits a slot that holds a predicate modifier enumeration value.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      default void visit(VersionSlot<T> slot, T object, Version version)
      Visits a slot that holds a SSSOM version value.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      version - The value of the slot.
    • visit

      void visit(CurieMapSlot<T> slot, T object, Map<String,String> value)
      Visits a slot that holds a curie map.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      value - The value of the slot.
    • visit

      void visit(ExtensionDefinitionSlot<T> slot, T object, List<ExtensionDefinition> values)
      Visits a slot that holds a list of extension definitions for non-standard metadata.
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      values - The values of the slot.
    • visit

      void visit(ExtensionSlot<T> slot, T object, Map<String,ExtensionValue> values)
      Visits a slot that holds extension values (non-standard metadata).
      Parameters:
      slot - The slot that is being visited.
      object - The object to which the slot is attached.
      values - The values of the slot.