Commit c6e04a74 authored by seinturi's avatar seinturi

Use alternate custom repository for OASIS and OpenCSA artefacts not available in Maven central.

parent 7c17fe3d
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.ow2.frascati.model</groupId>
<artifactId>osoa-java-api</artifactId>
<version>2.0.1.3</version>
<packaging>jar</packaging>
<name>Tinfi Artifact OSOA</name>
</project>
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
/**
*
* @param <B>
*/
public interface CallableReference<B> {
/**
* Returns a type-safe reference to the target of this reference. The
* instance returned is guaranteed to implement the business interface for
* this reference.
*
* @return a proxy to the target that implements the business interface
* associated with this reference.
*/
B getService();
/**
* Returns the Java class for the business interface associated with this
* reference.
*
* @return the Java class for the business interface associated with this
* reference.
*/
Class<B> getBusinessInterface();
/**
* Returns true if this reference is conversational.
*
* @return true if this reference is conversational.
*/
boolean isConversational();
/**
* Returns the conversation associated with this reference. Returns null if
* no conversation is currently active.
*
* @return the conversation associated with this reference. Returns null if
* no conversation is currently active.
*/
Conversation getConversation();
/**
* Returns the callback ID.
*
* @return the callback ID.
*/
Object getCallbackID();
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
/**
*
*
*
*/
// Lionel Seinturier - University of Lille: removed the method
// <B> ServiceReference<B> cast(B target) throws IllegalArgumentException
// according to http://www.osoa.org/jira/browse/JAVA-112
public interface ComponentContext {
/**
* Returns the absolute URI of the component within the SCA domain.
*
* @return the absolute URI of the component within the SCA domain.
*/
String getURI();
/**
* Returns a proxy for the reference defined by the current component.
*
* @param <B>
* @param businessInterface
* @param referenceName
* @return a proxy for the reference defined by the current component.
*/
<B> B getService(Class<B> businessInterface, String referenceName);
/**
* Returns a ServiceReference defined by the current component.
*
* @param <B>
* @param businessInterface
* @param referenceName
* @return a ServiceReference defined by the current component.
*/
<B> ServiceReference<B> getServiceReference(Class<B> businessInterface,
String referenceName);
/**
* Returns a ServiceReference that can be used to invoke this component over
* the designated service.
*
* @param <B>
* @param businessInterface
* @return a ServiceReference that can be used to invoke this component over
* the designated service.
*/
<B> ServiceReference<B> createSelfReference(Class<B> businessInterface);
/**
* Returns a ServiceReference that can be used to invoke this component over
* the designated service. Service name explicitly declares the service name
* to invoke.
*
* @param <B>
* @param businessInterface
* @param serviceName
* @return a ServiceReference that can be used to invoke this component over
* the designated service. Service name explicitly declares the
* service name to invoke.
*/
<B> ServiceReference<B> createSelfReference(Class<B> businessInterface,
String serviceName);
/**
* Returns the value of an SCA property defined by this component.
*
* @param <B>
* @param type
* @param propertyName
* @return the value of an SCA property defined by this component.
*/
<B> B getProperty(Class<B> type, String propertyName);
/**
* Casts a type-safe reference to a CallableReference.
*
* @param <B>
* @param <R>
* @param target
* @return
* @throws IllegalArgumentException
*/
<B, R extends CallableReference<B>> R cast(B target)
throws IllegalArgumentException;
/**
* Returns the context for the current SCA service request, or null if there
* is no current request or if the context is unavailable.
*
* @return the context for the current SCA service request, or null if there
* is no current request or if the context is unavailable.
*/
RequestContext getRequestContext();
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
/**
* Constants
*/
public class Constants {
public static final String SCA_PREFIX = "{http://www.osoa.org/xmlns/sca/1.0}"; //$NON-NLS-1$
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
/**
*
*/
// Stephane Drapeau - Obeo: Renamed getConversionID() -> getConversationID()
public interface Conversation {
/**
* Returns the identifier for this conversation. If a user-defined identity
* had been supplied for this reference then its value will be returned;
* otherwise the identity generated by the system when the conversation was
* initiated will be returned.
*
* @return the identifier for this conversation.
*/
Object getConversationID();
/**
* Ends this conversation.
*/
void end();
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
/**
*
*/
// Stephane Drapeau - Obeo: Added the four constructors to override the ones
// declared in RuntimeException
@SuppressWarnings("serial")
public class ConversationEndedException extends ServiceRuntimeException {
/**
*
*/
public ConversationEndedException() {
super();
}
/**
* @param arg0
* @param arg1
*/
public ConversationEndedException(String arg0, Throwable arg1) {
super(arg0, arg1);
}
/**
* @param arg0
*/
public ConversationEndedException(String arg0) {
super(arg0);
}
/**
* @param arg0
*/
public ConversationEndedException(Throwable arg0) {
super(arg0);
}
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
/**
*
*/
// Stephane Drapeau - Obeo: Added the four constructors to override
// the ones declared in RuntimeException. Renamed the class
// NoRegisteredCallbackException.
@SuppressWarnings("serial")
public class NoRegisteredCallbackException extends ServiceRuntimeException {
/**
*
*/
public NoRegisteredCallbackException() {
super();
}
/**
* @param arg0
* @param arg1
*/
public NoRegisteredCallbackException(String arg0, Throwable arg1) {
super(arg0, arg1);
}
/**
* @param arg0
*/
public NoRegisteredCallbackException(String arg0) {
super(arg0);
}
/**
* @param arg0
*/
public NoRegisteredCallbackException(Throwable arg0) {
super(arg0);
}
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
import javax.security.auth.Subject;
/**
*
*/
public interface RequestContext {
/**
* Returns the JAAS Subject of the current request.
*
* @return the JAAS Subject of the current request.
*/
Subject getSecuritySubject();
/**
* Returns the name of the service on the Java implementation the request
* came in on.
*
* @return the name of the service on the Java implementation the request
* came in on.
*/
String getServiceName();
/**
* Returns a callable reference to the callback as specified by the caller.
*
* @param <CB>
* @return a callable reference to the callback as specified by the caller.
*/
<CB> CallableReference<CB> getCallbackReference();
/**
* Returns a proxy for the callback as specified by the caller.
*
* @param <CB>
* @return a proxy for the callback as specified by the caller.
*/
<CB> CB getCallback();
/**
* Returns the callable reference that represents the service or callback
* reference that the request was invoked on. It is illegal for the service
* implementation to try to call the setCallback() on a returned service
* reference.
*
* @param <B>
* @return the callable reference that represents the service or callback
* reference that the request was invoked on. It is illegal for the
* service implementation to try to call the setCallback() on a
* returned service reference.
*/
<B> CallableReference<B> getServiceReference();
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
/**
*
* @param <B>
*/
public interface ServiceReference<B> extends CallableReference<B> {
/**
* Returns the id supplied by the user that will be associated with
* conversations initiated through this reference.
*
* @return the id supplied by the user that will be associated with
* conversations initiated through this reference.
*/
Object getConversationID();
/**
* Set the id to associate with any conversation started through this
* reference. If the value supplied is null then the id will be generated by
* the implementation. Throws an IllegalStateException if a conversation is
* currently associated with this reference.
*
* @param conversationId
* @throws IllegalStateException
*/
void setConversationID(Object conversationId) throws IllegalStateException;
/**
* Sets the callback ID.
*
* @param callbackID
*/
void setCallbackID(Object callbackID);
/**
* Returns the callback object.
*
* @return the callback object.
*/
Object getCallback();
/**
* Sets the callback object.
*
* @param callback
*/
void setCallback(Object callback);
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
/**
* This exception signals problems in the management of SCA component execution.
*/
// Stephane Drapeau - Obeo: Added the four constructors to override
// the ones declared in RuntimeException
@SuppressWarnings("serial")
public class ServiceRuntimeException extends RuntimeException {
/**
*
*/
public ServiceRuntimeException() {
super();
}
/**
* @param arg0
* @param arg1
*/
public ServiceRuntimeException(String arg0, Throwable arg1) {
super(arg0, arg1);
}
/**
* @param arg0
*/
public ServiceRuntimeException(String arg0) {
super(arg0);
}
/**
* @param arg0
*/
public ServiceRuntimeException(Throwable arg0) {
super(arg0);
}
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca;
/**
* This exception signals problems in the interaction with remote services. This
* extends ServiceRuntimeException. These are exceptions that may be transient,
* so retrying is appropriate. Any exception that is a ServiceRuntimeException
* that is not a ServiceUnavailableException is unlikely to be resolved by
* retrying the operation, since it most likely requires human intervention
*/
// Stephane Drapeau - Obeo: Added the four constructors to override
// the ones declared in RuntimeException
@SuppressWarnings("serial")
public class ServiceUnavailableException extends ServiceRuntimeException {
/**
*
*/
public ServiceUnavailableException() {
super();
}
/**
* @param arg0
* @param arg1
*/
public ServiceUnavailableException(String arg0, Throwable arg1) {
super(arg0, arg1);
}
/**
* @param arg0
*/
public ServiceUnavailableException(String arg0) {
super(arg0);
}
/**
* @param arg0
*/
public ServiceUnavailableException(Throwable arg0) {
super(arg0);
}
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca.annotations;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
/**
* Annotation on a method that indicates that its parameters may safely
* be passed by reference. The annotation may also be placed on an interface
* or class to indicate that all declared methods support this optimization.
*
* @version $Rev: 701389 $ $Date: 2008-10-03 19:55:27 +0530 (Fri, 03 Oct 2008) $
*/
@Target({TYPE, METHOD})
@Retention(RUNTIME)
public @interface AllowsPassByReference {
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca.annotations;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import static org.osoa.sca.Constants.SCA_PREFIX;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
/**
* Annotation denoting the intent that service operations require authentication.
* <p/>
* Applied to the injection site (field, method or constructor parameter) for a reference,
* it indicates that all invocations through that reference require authentication.
* <p/>
* Applied to a interface method on a service contract, it indicates that all invocations
* of that service operation require authentication; applied to the type of a service contract,
* it indicates that all service operations on that interface require authentication.
* <p/>
* Applied to a method on an implementation class, it indicates that all invocations that
* are dispatched to that implementation method (through any service) require authentication.
* Applied to a interface implemented by an implementation class, it indicates that all
* invocations that are dispatched to the implementation method for that interface operation
* require authentication.
* <p/>
* Applied to an implementation class, it indicates that all invocations of that implementation
* and that all invocations made by that implementation require authentication.
*
* @version $Rev: 701389 $ $Date: 2008-10-03 19:55:27 +0530 (Fri, 03 Oct 2008) $
*/
@Inherited
@Target({TYPE, FIELD, METHOD, PARAMETER})
@Retention(RUNTIME)
@Intent(Authentication.AUTHENTICATION)
public @interface Authentication {
String AUTHENTICATION = SCA_PREFIX + "authentication"; //$NON-NLS-1$
String AUTHENTICATION_MESSAGE = AUTHENTICATION + "message"; //$NON-NLS-1$
String AUTHENTICATION_TRANSPORT = AUTHENTICATION + "transport"; //$NON-NLS-1$
/**
* List of authentication qualifiers (such as "message" or "transport").
*
* @return authentication qualifiers
*/
@Qualifier
String[] value() default "";
}
/*
* (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
* Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
* Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
*
* see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
*/
package org.osoa.sca.annotations;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
/**
* When placed on a service interface, this annotation specifies the interface
* to be used for callbacks.
* <p/>
* When placed on a method or field, this annotation denotes the injection
* site to be used for a callback reference.
* <p/>
* There is a error in the 1.00 draft spec in the declaration of this interface.
* The form defined here is a proposed correction for that error.
*
* @version $Rev: 701389 $ $Date: 2008-10-03 19:55:27 +0530 (Fri, 03 Oct 2008) $
*/
@Target({TYPE, METHOD, FIELD})
@Retention(RUNTIME)
public @interface Callback {
/**
* The Class of the associated callback interface.
*
* @return the associated callback interface