Interface Property<T,X extends ModelAwareDataAwareAmetysObject>

Type Parameters:
T - type of the property values
X - type of ametys object supported by this property
All Superinterfaces:
Comparable<ModelItem>, ElementDefinition<T>, Labelable, ModelItem, ModifiableLabelable
All Known Subinterfaces:
IndexationAwareSystemProperty<T,X>, ReferencingProperty<T,X>, SystemProperty<T,X>
All Known Implementing Classes:
AbstractDateTimeIndexableSystemProperty, AbstractDateTimeSystemProperty, AbstractElementsReferencingProperty, AbstractIndexableContentProperty, AbstractIndexableProperty, AbstractIndexableStaticProperty, AbstractIndexableSystemProperty, AbstractMultiTypedValuesProperty, AbstractMultiValuesProperty, AbstractProperty, AbstractStaticProperty, AbstractSystemProperty, AbstractUserIndexableSystemProperty, AbstractUserSystemProperty, CollectionsSystemProperty, CommentsSystemProperty, ComputedStepHolderProperty, ContainerMCCWorkflowStatusProperty, ContentElementReferencingProperty, ContentIdSystemProperty, ContentPrivacySystemProperty, ContentTypeSystemProperty, ContributorSystemProperty, CreationDateSystemProperty, CreatorSystemProperty, DegreeOrderProperty, DegreeTypeProperty, DisplayCodeProperty, ElementReferencingProperty, FirstValidationSystemProperty, FirstValidatorSystemProperty, FulltextSystemProperty, HasLiveVersionSystemProperty, InvalidContainerDataProperty, LanguageSystemProperty, LastMajorValidationSystemProperty, LastMajorValidatorSystemProperty, LastModifiedSystemProperty, LastSynchronizationSystemProperty, LastSynchronizationUserSystemProperty, LastValidationSystemProperty, LastValidatorSystemProperty, MemberProjectProperty, MultiContentValuesProperty, MultiStringValuesProperty, NearestOrgUnitsProperty, ODFPrimaryContentTypeProperty, OrgUnitAncestorProperty, OrphanSystemProperty, OverridenThematicsProperty, PagesSystemProperty, ParentContentSystemProperty, ParentProgramsProperty, ParentSubProgramsProperty, PinProperty, ProfiledGroupsTagsSystemProperty, ProgramMCCWorkflowStatusProperty, SemanticAnnotationSystemProperty, SharedProperty, SharedSystemProperty, SiteSystemProperty, SiteTypeSystemProperty, SubProgramParentProgramProperty, TagsSystemProperty, TagsSystemProperty, TrashElementSiteProperty, ViewBasedFullTextSystemProperty, WorkflowNameSystemProperty, WorkflowStepSystemProperty, WorkflowStepSystemProperty

public interface Property<T,X extends ModelAwareDataAwareAmetysObject> extends ElementDefinition<T>
Interface for a property
  • Method Details

    • init

      void init(String availableTypesRole) throws Exception
      Used to do more initialization, checks... needing the role of extension point containing the types available for this property Called by Model parsing when the model items of all models have been initialized.
      Parameters:
      availableTypesRole - the extension point's role for available types
      Throws:
      Exception - if an error occurs or if an additional check fails.
    • getType

      Description copied from interface: ModelItem
      Retrieves the type.
      Specified by:
      getType in interface ElementDefinition<T>
      Specified by:
      getType in interface ModelItem
      Returns:
      the type.
    • getValue

      Object getValue(X ametysObject)
      Get the property's value
      Parameters:
      ametysObject - the ametysObject containing the property
      Returns:
      the values to index.
    • valueToSAX

      default void valueToSAX(ContentHandler contentHandler, X ametysObject, DataContext context) throws SAXException
      Generates SAX events for the property
      Parameters:
      contentHandler - the ContentHandler that will receive the SAX events
      ametysObject - the ametysObject containing the property to SAX.
      context - the context of the data to SAX. Can not be null.
      Throws:
      SAXException - if an error occurs during the SAX events generation
    • valueToJSON

      default Object valueToJSON(X ametysObject, DataContext context)
      Convert the property into a JSON object
      Parameters:
      ametysObject - the ametysObject containing the property to convert.
      context - the context of the data to convert. Can not be null.
      Returns:
      The property as JSON