Class RowAccessRights

  • All Implemented Interfaces:
    Trigger

    public class RowAccessRights
    extends TriggerAdapter
    This sample application show how to emulate per-row access rights so that each user can only access rows created by the given user.
    • Constructor Summary

      Constructors 
      Constructor Description
      RowAccessRights()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void fire​(java.sql.Connection conn, java.sql.ResultSet oldRow, java.sql.ResultSet newRow)
      This method is called for each triggered action by the default fire(Connection conn, Object[] oldRow, Object[] newRow) method.
      void init​(java.sql.Connection conn, java.lang.String schemaName, java.lang.String triggerName, java.lang.String tableName, boolean before, int type)
      This method is called by the database engine once when initializing the trigger.
      static void main​(java.lang.String... args)
      Called when ran from command line.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RowAccessRights

        public RowAccessRights()
    • Method Detail

      • main

        public static void main​(java.lang.String... args)
                         throws java.lang.Exception
        Called when ran from command line.
        Parameters:
        args - ignored
        Throws:
        java.lang.Exception - on failure
      • init

        public void init​(java.sql.Connection conn,
                         java.lang.String schemaName,
                         java.lang.String triggerName,
                         java.lang.String tableName,
                         boolean before,
                         int type)
                  throws java.sql.SQLException
        Description copied from class: TriggerAdapter
        This method is called by the database engine once when initializing the trigger. It is called when the trigger is created, as well as when the database is opened. The default implementation initialized the result sets.
        Specified by:
        init in interface Trigger
        Overrides:
        init in class TriggerAdapter
        Parameters:
        conn - a connection to the database
        schemaName - the name of the schema
        triggerName - the name of the trigger used in the CREATE TRIGGER statement
        tableName - the name of the table
        before - whether the fire method is called before or after the operation is performed
        type - the operation type: INSERT, UPDATE, DELETE, SELECT, or a combination (this parameter is a bit field)
        Throws:
        java.sql.SQLException - on SQL exception
      • fire

        public void fire​(java.sql.Connection conn,
                         java.sql.ResultSet oldRow,
                         java.sql.ResultSet newRow)
                  throws java.sql.SQLException
        Description copied from class: TriggerAdapter
        This method is called for each triggered action by the default fire(Connection conn, Object[] oldRow, Object[] newRow) method.

        For "before" triggers, the new values of the new row may be changed using the ResultSet.updateX methods.

        Specified by:
        fire in class TriggerAdapter
        Parameters:
        conn - a connection to the database
        oldRow - the old row, or null if no old row is available (for INSERT)
        newRow - the new row, or null if no new row is available (for DELETE)
        Throws:
        java.sql.SQLException - if the operation must be undone