org.glite.security.voms.service.history
Interface VOMSHistory


public interface VOMSHistory

Virtual Organisation Membership Service History interface. This service provides auditing methods for "back-in-time" queries, which could describe the context of a situation based on the state of the database at a given point in time.

Author:
Akos Frohner, Karoly Lorentey

Method Summary
 ACLEntry[] getACL(java.lang.String container, long transaction)
          Get the ACL for a container at a given transaction.
 ACLEntry[] getDefaultACL(java.lang.String groupname, long transaction)
          Get the default ACL for a group at a given transaction.
 int getMajorVersionNumber()
          Returns the major version number.
 int getMinorVersionNumber()
          Returns the minor version number.
 java.lang.String getModificationsSince(long transaction)
          Returns the database modifications as a HUGE XML document since the marked transaction.
 int getPatchVersionNumber()
          Returns the patch version number.
 User[] listMembers(java.lang.String container, long transaction)
          List members of a container at a given transaction.
 java.util.Calendar toTime(long transaction)
          Converts a transaction number to time-mark.
 long toTransaction(java.util.Calendar time)
          Converts a time-mark to transaction number.
 

Method Detail

toTransaction

public long toTransaction(java.util.Calendar time)
                   throws VOMSException
Converts a time-mark to transaction number.

Parameters:
time - Time-mark.
Returns:
Transaction number.
Throws:
VOMSException

toTime

public java.util.Calendar toTime(long transaction)
                          throws VOMSException
Converts a transaction number to time-mark. The time-marks are not recorded for every transaction, so the method will return the closest, earlierst time-mark.

Parameters:
transaction - Transaction number.
Returns:
Time-mark.
Throws:
VOMSException

getModificationsSince

public java.lang.String getModificationsSince(long transaction)
                                       throws VOMSException
Returns the database modifications as a HUGE XML document since the marked transaction. The purpose of this function is to allow slave replicas for requesting incremental updates.

Parameters:
transaction - The last known transaction.
Returns:
XML document with all modifications.
Throws:
VOMSException

listMembers

public User[] listMembers(java.lang.String container,
                          long transaction)
                   throws VOMSException
List members of a container at a given transaction.

Parameters:
container - The tested container's name.
transaction - Transaction number.
Returns:
Members of the container.
Throws:
VOMSException
See Also:
VOMSAdmin.listMembers(java.lang.String)

getACL

public ACLEntry[] getACL(java.lang.String container,
                         long transaction)
                  throws VOMSException
Get the ACL for a container at a given transaction.

Parameters:
container - The tested container's name.
transaction - Transaction number.
Returns:
ACL
Throws:
VOMSException
See Also:
VOMSAdmin.getACL(java.lang.String)

getDefaultACL

public ACLEntry[] getDefaultACL(java.lang.String groupname,
                                long transaction)
                         throws VOMSException
Get the default ACL for a group at a given transaction.

Parameters:
groupname - The tested group's name.
transaction - Transaction number.
Returns:
ACL
Throws:
VOMSException
See Also:
VOMSAdmin.getDefaultACL(java.lang.String)

getMajorVersionNumber

public int getMajorVersionNumber()
Returns the major version number.


getMinorVersionNumber

public int getMinorVersionNumber()
Returns the minor version number.


getPatchVersionNumber

public int getPatchVersionNumber()
Returns the patch version number.



Copyright © 2004 EU-EGEE