Class MOAccessImpl

  • All Implemented Interfaces:
    MOAccess
    Direct Known Subclasses:
    SimMOFactory.SimMOAccess

    public class MOAccessImpl
    extends Object
    implements MOAccess
    The MOAccessImpl class implements an immutable MOAccess. For special purposes, it can be sub-classed to modify access dynamically, for example to build an simulation agent where objects may be modified in a certain mode even if they are read-only normally.
    Version:
    1.0
    Author:
    Frank Fock
    • Field Detail

      • ACCESSIBLE_FOR_READ_ONLY

        public static final short ACCESSIBLE_FOR_READ_ONLY
        See Also:
        Constant Field Values
      • ACCESSIBLE_FOR_READ_WRITE

        public static final short ACCESSIBLE_FOR_READ_WRITE
        See Also:
        Constant Field Values
      • ACCESSIBLE_FOR_READ_CREATE

        public static final short ACCESSIBLE_FOR_READ_CREATE
        See Also:
        Constant Field Values
      • ACCESS_READ_ONLY

        public static final MOAccess ACCESS_READ_ONLY
      • ACCESS_FOR_NOTIFY

        public static final MOAccess ACCESS_FOR_NOTIFY
      • ACCESS_WRITE_ONLY

        public static final MOAccess ACCESS_WRITE_ONLY
      • ACCESS_READ_WRITE

        public static final MOAccess ACCESS_READ_WRITE
      • ACCESS_READ_CREATE

        public static final MOAccess ACCESS_READ_CREATE
    • Constructor Detail

      • MOAccessImpl

        public MOAccessImpl​(int access)
    • Method Detail

      • isAccessibleForRead

        public boolean isAccessibleForRead()
        Description copied from interface: MOAccess
        Check whether the managed object can be read (i.e. accessed by GET, GETNEXT, or GETBULK requests).
        Specified by:
        isAccessibleForRead in interface MOAccess
        Returns:
        true if the managed object instance(s) can be read.
      • isAccessibleForWrite

        public boolean isAccessibleForWrite()
        Description copied from interface: MOAccess
        Check whether the managed object can be written (i.e. accessed by SET requests).
        Specified by:
        isAccessibleForWrite in interface MOAccess
        Returns:
        true if the managed object instance(s) can be written.
      • isAccessibleForNotify

        public boolean isAccessibleForNotify()
        Description copied from interface: MOAccess
        Check whether the managed object can be send in a notification.
        Specified by:
        isAccessibleForNotify in interface MOAccess
        Returns:
        true if the managed object instance(s) can be send in a notification.
      • isAccessibleForCreate

        public boolean isAccessibleForCreate()
        Description copied from interface: MOAccess
        Check whether the managed object can be created (through a SET request on a non existant instance of a columnar object).
        Specified by:
        isAccessibleForCreate in interface MOAccess
        Returns:
        true if the managed object instance(s) can be created.
      • getAccess

        public final short getAccess()
        Returns the internal access ID.
        Returns:
        a short value identifying the configured access level.
      • getInstance

        public static MOAccess getInstance​(int moAccess)
        Returns the appropriate MOAccess instance for the supplied access ID. If that ID matches one of the standard access levels defined by this class, then that instance is returned. Otherwise, a new instance will be created with that access ID.
        Parameters:
        moAccess - a bitwise OR combination of the basic access levels defined by this class.
        Returns:
        a MOAccess instance.
      • asString

        public String asString()
        Return the access rights as string where rights are separated by the pipe symbol (|).
        Returns:
        the access rights as pipe symbol separated string, for example "read|write" if isAccessibleForRead() and isAccessibleForWrite() return true (and all other return false).
        Since:
        2.5.0