All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.xml.registry.infomodel.AuditableEvent Maven / Gradle / Ivy

The newest version!
/*
* The contents of this file are subject to the terms 
* of the Common Development and Distribution License 
* (the License).  You may not use this file except in
* compliance with the License.
* 
* You can obtain a copy of the license at 
* https://glassfish.dev.java.net/public/CDDLv1.0.html or
* glassfish/bootstrap/legal/CDDLv1.0.txt.
* See the License for the specific language governing 
* permissions and limitations under the License.
* 
* When distributing Covered Code, include this CDDL 
* Header Notice in each file and include the License file 
* at glassfish/bootstrap/legal/CDDLv1.0.txt.  
* If applicable, add the following below the CDDL Header, 
* with the fields enclosed by brackets [] replaced by
* you own identifying information: 
* "Portions Copyrighted [year] [name of copyright owner]"
* 
* Copyright 2007 Sun Microsystems, Inc. All rights reserved.
*/


package javax.xml.registry.infomodel;

import java.util.*;
import java.sql.Timestamp;
import javax.xml.registry.*;

/**
 * AuditableEvent instances provide a long term record of events that effect a 
 * change of state in a RegistryObject. Such events are usually a result of a 
 * client initiated request. AuditableEvent instances are generated by the 
 * registry service to log such events.
 * 

* Often such events effect a change in the life cycle of a RegistryObject. * For example a client request could Create, Update, Deprecate or Delete a * RegistryObject. No AuditableEvent is created for requests that do not alter * the state of a RegistryObject. Specifically, read-only requests do not generate * an AuditableEvent. * No AuditableEvent is generated for a RegistryObject when it is classified, * assigned to a Package or associated with another Object. *

* A RegistryObject is associated with an ordered Collection of AuditableEvent * instances that provide a complete audit trail for that Object. * * * @see RegistryObject * @author Farrukh S. Najmi */ public interface AuditableEvent extends RegistryObject { /** Gets the User associated with this object. * *

Capability Level: 1
* * @return the User that sent the request that generated this this AuditableEvent. Must not be null * @throws JAXRException If the JAXR provider encounters an internal error * * @label requestor * @supplierCardinality 1 * @directed * @associates <{User}> */ User getUser() throws JAXRException; /** * Gets the Timestamp for when this event occurred. * *

Capability Level: 1
* * @return the timestamp that records the time the event occured * @throws JAXRException If the JAXR provider encounters an internal error * */ Timestamp getTimestamp() throws JAXRException; /** * Gets the type of this event. * *

Capability Level: 1
* * @see AuditableEvent#EVENT_TYPE_CREATED * @return the type of this event * @throws JAXRException If the JAXR provider encounters an internal error * */ int getEventType() throws JAXRException; /** * Gets the RegistryObject associated with this AuditableEvent. * *

Capability Level: 1
* * @return the RegistryObject that was the focus of this event * @throws JAXRException If the JAXR provider encounters an internal error * */ RegistryObject getRegistryObject() throws JAXRException; /** An event where a RegistryObject is created. */ public static final int EVENT_TYPE_CREATED=0; /** An event where a RegistryObject is deleted. */ public static final int EVENT_TYPE_DELETED=1; /** An event where a RegistryObject is deprecated. */ public static final int EVENT_TYPE_DEPRECATED=2; /** An event where a RegistryObject is updated. */ public static final int EVENT_TYPE_UPDATED=3; /** An event where a RegistryObject is versioned. */ public static final int EVENT_TYPE_VERSIONED=4; /** An event where a RegistryObject is undeprecated. */ public static final int EVENT_TYPE_UNDEPRECATED=5; }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy