Interface ValueStore

  • All Known Implementing Classes:
    DefaultValueStore, JAXBValueStore

    public interface ValueStore

    Purpose The ValueStore interface exposes the property model in SDO to pluggable implementers that wish to wrap their object model in the SDO API.

    The ValueStore interface exposes the properties Map in SDODataObject to extension or replacement. The implementing class must override or extend the get/set/isSet/unset ValueStore functions so that any calls routed through the SDO API are routed through to the underlying Data-Model that ValueStore wraps.

    Possible implementers must maintain DataObject integrity which includes containment and changeSummary.

    Setup:
    Before using the ValueStore interface the type tree must be defined by loading in the XSD schema file that matches the plugged in model if using dynamic classes.

    The ValueStore interface enables 3rd party implementers of the SDO API to plug-in their object model in place of the default SDO DataObject interface. The Map like functions set/get and the List like functions isSet/unset are left to the implementation to maintain.
    It is the responsibility of the implementation to handle read or read/write capability against the underlying object model. Any access or modification of the pluggable object model done outside of this interface may destabilize the ValueStore state.

    • Method Detail

      • getDeclaredProperty

        Object getDeclaredProperty​(int propertyIndex)
      • getOpenContentProperty

        Object getOpenContentProperty​(Property property)
      • setDeclaredProperty

        void setDeclaredProperty​(int propertyIndex,
                                 Object value)
      • setOpenContentProperty

        void setOpenContentProperty​(Property property,
                                    Object value)
      • setManyProperty

        void setManyProperty​(Property propertyName,
                             Object value)
      • isSetDeclaredProperty

        boolean isSetDeclaredProperty​(int propertyIndex)
      • isSetOpenContentProperty

        boolean isSetOpenContentProperty​(Property property)
      • unsetDeclaredProperty

        void unsetDeclaredProperty​(int propertyIndex)
      • unsetOpenContentProperty

        void unsetOpenContentProperty​(Property property)
      • initialize

        void initialize​(DataObject dataObject)
        Perform any post-instantiation integrity operations that could not be done during ValueStore creation.
        Since the dataObject reference passed in may be bidirectional or self-referencing - we cannot set this variable until the dataObject itself is finished instantiation - hence the 2-step initialization.
        Parameters:
        dataObject -
      • copy

        ValueStore copy()
        Get a shallow copy of the original ValueStore. Changes made to the copy must not impact the original ValueStore
        Returns:
        ValueStore