Interface Identified

All Known Subinterfaces:
AncestorRule, BookmarkResolver, EquivalenceRule, Format, FunctionFramework, IdentifiedFunction, IdentifiedModel, ModelFramework, NestedPipelineStep, ParameterBinder, PipelineOutputStore, Secret, Step, UserDefinedParameter, VarianceRule
All Known Implementing Classes:
AnythingRule, Bookmark, CanonicalType, ContainingTypeRule, EmptyListRule, EqualityRule, ExtensionPoint, FunctionMetadata, GeometryRule, IdentifiedFunction.Wrapping, IdentifiedType, IntegerToFloatingRule, JavaFunction, JavaRule, LinkedType, LinkedTypeRule, LookupTableTypeRule, MetadataBasedFunction, NothingRule, NullableAncestorRule, NullableRule, NullableTargetRule, NullStep, NumberTypeAncestorRule, PartialStructRule, ProblemPlaceholder, RealizableFunction.MetadataIdentifiedRealizableFunction, ReferencedAncestorRule, RSListAncestorRule, SameRule, SecretBuilder, SingleGeomToMultiGeomRule, SingleValueStructRule, StructGeometryRule, StructMemberAncestorRule, TypeInformation, TypeSafeAncestorRule, WrappedTypeAncestorRule, WrappingTypesRule

public interface Identified

Object that as an identifier.

  • Method Details

    • getId

      String getId()
      Returns:
      id
    • findIdentifiedClass

      static Class<? extends Identified> findIdentifiedClass(Class<? extends Identified> thisClass)
      Returns:
      the parent class or interface that directly implements the Identified interface, or null if no such class was found. For example, for JavaFunction then this would return the IdentifiedFunction interface.
    • getIdentifiedClass

      default Class<? extends Identified> getIdentifiedClass()
      Returns:
      the class that implements the Identified interface - this should be the API class, and not the implementation class. For example the jython function would return IdentifiedFunction from here, not JythonFunction. The default implementation should be fine for most uses, apart from proxying.