company logo

DatabaseContext :: protectAction - Protect action

Actions may be protected globally or within a certain context class (by passing the context class name). Protected actions are checked for permission (permitted()) before being executed. Since permission checks depend on the application, the permitted() function has to be overloaded by the application.

Implementation overview

Implementation details

  1. Protect action globally
    DatabaseContext  :: protectAction ( odaba::String &sActionName )

    When an action has been protected globally, those are checked regardless on the context in which those are called. Usually, actions are protected globally by using unique action names.

    • sActionName - Action name

      The action name is a name of an action implemented in the context class related to the database source or implemented as default action. Actions can be implemented as expressions, as C++ functions or as .NET function.

      In order to pass no action name, an empty string ( String() ) may be passed.

  2. to list
  3. Protect action in a specific context
    DatabaseContext  :: protectAction ( odaba::String &sActionName, odaba::String &sTypeName )

    An action may be protected in a specific context by passing the context class name in addition to the action name (e.g. sPerson (type context class for Person) in order to protect instance actions for a Person).

    • sActionName - Action name

      The action name is a name of an action implemented in the context class related to the database source or implemented as default action. Actions can be implemented as expressions, as C++ functions or as .NET function.

      In order to pass no action name, an empty string ( String() ) may be passed.

    • sTypeName - Type name

      The type name is the name of a data type (usually) defined in the database. The type name might be passed as simple identifier or as scoped name with preceding namespace names separated by double colon '::'.

      In order to pass no type name, an empty string ( String() ) may be passed.

  4. to list