You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jm...@apache.org on 2006/06/10 08:04:01 UTC
svn commit: r413256 [2/2] - in /incubator/tuscany/sandbox/jboynes/spec: ./
sca/ sca/src/ sca/src/main/ sca/src/main/java/ sca/src/main/java/org/
sca/src/main/java/org/osoa/ sca/src/main/java/org/osoa/sca/
sca/src/main/java/org/osoa/sca/annotations/ sca...
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Remotable.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Remotable.java?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Remotable.java (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Remotable.java Fri Jun 9 23:03:59 2006
@@ -0,0 +1,34 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.osoa.sca.annotations;
+
+import static java.lang.annotation.ElementType.TYPE;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation used to indicate a Java interface as remotable.
+ * Remotable interfaces use pass-by-value semantics, can be published as entry points
+ * and used for external services.
+ *
+ * @version $Rev: 368822 $ $Date: 2006-01-13 10:54:38 -0800 (Fri, 13 Jan 2006) $
+ */
+@Target(TYPE)
+@Retention(RUNTIME)
+public @interface Remotable {
+}
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Remotable.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Remotable.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Scope.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Scope.java?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Scope.java (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Scope.java Fri Jun 9 23:03:59 2006
@@ -0,0 +1,42 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.osoa.sca.annotations;
+
+import static java.lang.annotation.ElementType.TYPE;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation used to indicate a scoped service.
+ *
+ * @version $Rev: 368822 $ $Date: 2006-01-13 10:54:38 -0800 (Fri, 13 Jan 2006) $
+ */
+@Target(TYPE)
+@Retention(RUNTIME)
+public @interface Scope {
+ /**
+ * The name of the scope. Values currently defined by the specification are:
+ * <ul>
+ * <li>stateless (default)</li>
+ * <li>request</li>
+ * <li>session</li>
+ * <li>module</li>
+ * </ul>
+ */
+ String value() default "stateless";
+}
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Scope.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Scope.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Service.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Service.java?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Service.java (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Service.java Fri Jun 9 23:03:59 2006
@@ -0,0 +1,41 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.osoa.sca.annotations;
+
+import static java.lang.annotation.ElementType.TYPE;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation used to indicate the service interfaces exposed by a Java class.
+ *
+ * @version $Rev: 368822 $ $Date: 2006-01-13 10:54:38 -0800 (Fri, 13 Jan 2006) $
+ */
+@Target({TYPE})
+@Retention(RUNTIME)
+public @interface Service {
+ /**
+ * Array of interfaces that should be exposed as services.
+ */
+ Class<?>[] interfaces() default {};
+
+ /**
+ * Shortcut allowing a single interface to be exposed.
+ */
+ Class<?> value() default Void.class;
+}
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Service.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Service.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Session.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Session.java?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Session.java (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Session.java Fri Jun 9 23:03:59 2006
@@ -0,0 +1,49 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.osoa.sca.annotations;
+
+import static java.lang.annotation.ElementType.TYPE;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation used to indicate the characteristics of a session.
+ *
+ * @version $Rev: 368822 $ $Date: 2006-01-13 10:54:38 -0800 (Fri, 13 Jan 2006) $
+ */
+@Target(TYPE)
+@Retention(RUNTIME)
+public @interface Session {
+ /**
+ * The maximum time that can pass between operations in a single conversation.
+ * If this time is exceeded the container may end the conversation.
+ */
+ public String maxIdleTime() default "";
+
+ /**
+ * The maximum time that a conversation may remain active.
+ * If this time is exceeded the container may end the conversation.
+ */
+ public String maxAge() default "";
+
+ /**
+ * If true, indicates that only the user that initiated the conversation
+ * has the authority to continue it.
+ */
+ public boolean singlePrincipal() default false;
+}
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Session.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/Session.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/SessionID.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/SessionID.java?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/SessionID.java (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/SessionID.java Fri Jun 9 23:03:59 2006
@@ -0,0 +1,33 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.osoa.sca.annotations;
+
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import java.lang.annotation.Target;
+
+/**
+ * Annotation used to indicate a field or method that is used to inject the session ID.
+ *
+ * @version $Rev: 368822 $ $Date: 2006-01-13 10:54:38 -0800 (Fri, 13 Jan 2006) $
+ */
+@Target({METHOD, FIELD})
+@Retention(RUNTIME)
+public @interface SessionID {
+}
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/SessionID.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/java/org/osoa/sca/annotations/SessionID.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/META-INF/MANIFEST.MF?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/META-INF/MANIFEST.MF (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/META-INF/MANIFEST.MF Fri Jun 9 23:03:59 2006
@@ -0,0 +1,8 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: SCA APIs
+Bundle-SymbolicName: org.apache.tuscany.sca.spec
+Bundle-Version: 1.0.0
+Bundle-Localization: plugin
+Bundle-Vendor: Apache
+Export-Package: org.osoa.sca, org.osoa.sca.annotations, org.osoa.sca.model
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-sca.xsd
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-sca.xsd?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-sca.xsd (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-sca.xsd Fri Jun 9 23:03:59 2006
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ -->
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.osoa.org/xmlns/sca/0.9"
+ xmlns:sca="http://www.osoa.org/xmlns/sca/0.9"
+ elementFormDefault="qualified">
+
+ <include schemaLocation="sca-core.xsd"/>
+
+ <element name="binding.sca" type="sca:SCABinding" substitutionGroup="sca:binding"/>
+ <complexType name="SCABinding">
+ <complexContent>
+ <extension base="sca:Binding">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </extension>
+ </complexContent>
+ </complexType>
+</schema>
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-sca.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-sca.xsd
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-webservice.xsd
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-webservice.xsd?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-webservice.xsd (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-webservice.xsd Fri Jun 9 23:03:59 2006
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.osoa.org/xmlns/sca/0.9"
+ xmlns:sca="http://www.osoa.org/xmlns/sca/0.9"
+ elementFormDefault="qualified">
+
+ <include schemaLocation="sca-core.xsd"/>
+
+ <element name="binding.ws" type="sca:WebServiceBinding" substitutionGroup="sca:binding"/>
+ <complexType name="WebServiceBinding">
+ <complexContent>
+ <extension base="sca:Binding">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="port" type="anyURI" use="required"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </extension>
+ </complexContent>
+ </complexType>
+</schema>
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-webservice.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-binding-webservice.xsd
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-core.xsd
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-core.xsd?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-core.xsd (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-core.xsd Fri Jun 9 23:03:59 2006
@@ -0,0 +1,230 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.osoa.org/xmlns/sca/0.9"
+ xmlns:sca="http://www.osoa.org/xmlns/sca/0.9"
+ elementFormDefault="qualified">
+
+ <element name="componentType" type="sca:ComponentType"/>
+ <complexType name="ComponentType">
+ <sequence>
+ <element minOccurs="0" maxOccurs="unbounded" name="service" type="sca:Service"/>
+ <element minOccurs="0" maxOccurs="unbounded" name="reference" type="sca:Reference"/>
+ <element minOccurs="0" maxOccurs="unbounded" name="property" type="sca:Property"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+ <complexType name="Service">
+ <sequence>
+ <element minOccurs="1" maxOccurs="1" ref="sca:interface"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="name" type="NCName" use="required"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+ <element name="interface" type="sca:Interface"/>
+ <complexType name="Interface"/>
+
+ <complexType name="Reference">
+ <sequence>
+ <element minOccurs="1" maxOccurs="1" ref="sca:interface"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="name" type="NCName" use="required"/>
+ <attribute name="multiplicity" type="sca:Multiplicity" use="optional" default="1..1"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+ <complexType name="Property">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="name" type="NCName" use="required"/>
+ <attribute name="type" type="QName" use="required"/>
+ <attribute name="many" type="boolean" default="false" use="optional"/>
+ <attribute name="required" type="boolean" default="false" use="optional"/>
+ <attribute name="default" type="string" use="optional"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+
+ <element name="moduleFragment" type="sca:ModuleFragment"/>
+ <complexType name="ModuleFragment">
+ <sequence>
+ <element minOccurs="0" maxOccurs="unbounded" name="entryPoint" type="sca:EntryPoint"/>
+ <element minOccurs="0" maxOccurs="unbounded" name="component" type="sca:Component"/>
+ <element minOccurs="0" maxOccurs="unbounded" name="externalService" type="sca:ExternalService"/>
+ <element minOccurs="0" maxOccurs="unbounded" name="wire" type="sca:ModuleWire"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="name" type="NCName" use="required"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+ <element name="module" type="sca:Module"/>
+ <complexType name="Module">
+ <complexContent>
+ <extension base="sca:ModuleFragment"/>
+ </complexContent>
+ </complexType>
+
+ <complexType name="EntryPoint">
+ <sequence>
+ <element minOccurs="0" maxOccurs="1" ref="sca:interface"/>
+ <element minOccurs="1" maxOccurs="unbounded" ref="sca:binding"/>
+ <element minOccurs="1" maxOccurs="unbounded" name="reference" type="anyURI"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="name" type="NCName" use="required"/>
+ <attribute name="multiplicity" type="sca:Multiplicity" use="optional" default="1..1"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+ <!-- a multiplicity 1..1 or 0..n sample
+ <reference>StockQuoteComponent</reference> - type must be URI
+ a multiplicity 1..n or 0..n sample
+ <reference>StockQuoteComponent1</reference> - type must be URI
+ <reference>StockQuoteComponent2</reference>
+ -->
+
+ <element name="binding" type="sca:Binding"/>
+ <complexType name="Binding">
+ <attribute name="uri" type="anyURI" use="optional"/>
+ </complexType>
+
+ <complexType name="Component">
+ <sequence>
+ <element minOccurs="1" maxOccurs="1" ref="sca:implementation"/>
+ <element minOccurs="0" maxOccurs="1" name="properties" type="sca:PropertyValues"/>
+ <element minOccurs="0" maxOccurs="1" name="references" type="sca:ReferenceValues"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="name" type="NCName" use="required"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+ <!-- a multiplicity 1..1 or 0..1 sample
+ <references>
+ <v:stockQuote>StockQuoteComponent</v:stockquote> - type must be URI
+ </references>
+ a multiplicity 1..n or 0..n sample
+ <references>
+ <v:stockQuote>StockQuoteComponent1</v:stockQuote> - type must be URI
+ <v:stockQuote>StockQuoteComponent2</v:stockQuote>
+ </references>
+ -->
+
+ <element name="implementation" type="sca:Implementation"/>
+ <complexType name="Implementation"/>
+
+ <complexType name="PropertyValues">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+ <complexType name="ReferenceValues">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+
+ <complexType name="ExternalService">
+ <sequence>
+ <element minOccurs="1" maxOccurs="1" ref="sca:interface"/>
+ <element minOccurs="0" maxOccurs="unbounded" ref="sca:binding"/>
+ </sequence>
+ <attribute name="name" type="NCName" use="required"/>
+ <attribute name="overridable" type="sca:OverrideOptions" default="may" use="optional"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+
+ <complexType name="ModuleWire">
+ <sequence>
+ <element minOccurs="1" maxOccurs="1" ref="sca:source.uri"/>
+ <element minOccurs="1" maxOccurs="1" ref="sca:target.uri"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+ <element name="source" type="anyType"/>
+ <element name="target" type="anyType"/>
+
+ <element name="source.uri" type="anyURI" substitutionGroup="sca:source"/>
+ <element name="target.uri" type="anyURI" substitutionGroup="sca:target"/>
+
+ <element name="subsystem" type="sca:Subsystem"/>
+ <complexType name="Subsystem">
+ <sequence>
+ <element minOccurs="0" maxOccurs="unbounded" name="entryPoint" type="sca:EntryPoint"/>
+ <element minOccurs="0" maxOccurs="unbounded" name="moduleComponent" type="sca:ModuleComponent"/>
+ <element minOccurs="0" maxOccurs="unbounded" name="externalService" type="sca:ExternalService"/>
+ <element minOccurs="0" maxOccurs="unbounded" name="wire" type="sca:SystemWire"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="name" type="NCName" use="required"/>
+ <attribute name="uri" type="anyURI" use="optional"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+ <complexType name="ModuleComponent">
+ <sequence>
+ <element minOccurs="0" maxOccurs="1" name="properties" type="sca:PropertyValues"/>
+ <element minOccurs="0" maxOccurs="1" name="references" type="sca:ReferenceValues"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="name" type="NCName" use="required"/>
+ <attribute name="module" type="NCName" use="required"/>
+ <attribute name="uri" type="anyURI" use="optional"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </complexType>
+
+ <complexType name="SystemWire">
+ <sequence>
+ <element minOccurs="1" maxOccurs="1" ref="sca:source"/>
+ <element minOccurs="1" maxOccurs="1" ref="sca:target"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <element name="source.epr" type="anyType" substitutionGroup="sca:source"/>
+ <element name="target.epr" type="anyType" substitutionGroup="sca:target"/>
+
+ <simpleType name="Multiplicity">
+ <restriction base="string">
+ <enumeration value="0..1"/>
+ <enumeration value="1..1"/>
+ <enumeration value="0..n"/>
+ <enumeration value="1..n"/>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="OverrideOptions">
+ <restriction base="string">
+ <enumeration value="no"/>
+ <enumeration value="may"/>
+ <enumeration value="must"/>
+ </restriction>
+ </simpleType>
+
+</schema>
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-core.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-core.xsd
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-implementation-java.xsd
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-implementation-java.xsd?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-implementation-java.xsd (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-implementation-java.xsd Fri Jun 9 23:03:59 2006
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.osoa.org/xmlns/sca/0.9"
+ xmlns:sca="http://www.osoa.org/xmlns/sca/0.9"
+ elementFormDefault="qualified">
+
+ <include schemaLocation="sca-core.xsd"/>
+
+ <element name="implementation.java" type="sca:JavaImplementation" substitutionGroup="sca:implementation"/>
+ <complexType name="JavaImplementation">
+ <complexContent>
+ <extension base="sca:Implementation">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="class" type="NCName" use="required"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </extension>
+ </complexContent>
+ </complexType>
+</schema>
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-implementation-java.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-implementation-java.xsd
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-java.xsd
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-java.xsd?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-java.xsd (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-java.xsd Fri Jun 9 23:03:59 2006
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.osoa.org/xmlns/sca/0.9"
+ xmlns:sca="http://www.osoa.org/xmlns/sca/0.9"
+ elementFormDefault="qualified">
+
+ <include schemaLocation="sca-core.xsd"/>
+
+ <element name="interface.java" type="sca:JavaInterface" substitutionGroup="sca:interface"/>
+ <complexType name="JavaInterface">
+ <complexContent>
+ <extension base="sca:Interface">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="interface" type="NCName" use="required"/>
+ <attribute name="callbackInterface" type="NCName" use="optional"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </extension>
+ </complexContent>
+ </complexType>
+</schema>
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-java.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-java.xsd
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-wsdl.xsd
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-wsdl.xsd?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-wsdl.xsd (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-wsdl.xsd Fri Jun 9 23:03:59 2006
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.osoa.org/xmlns/sca/0.9"
+ xmlns:sca="http://www.osoa.org/xmlns/sca/0.9"
+ elementFormDefault="qualified">
+
+ <include schemaLocation="sca-core.xsd"/>
+
+ <element name="interface.wsdl" type="sca:WSDLPortType" substitutionGroup="sca:interface"/>
+ <complexType name="WSDLPortType">
+ <complexContent>
+ <extension base="sca:Interface">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="interface" type="anyURI" use="required"/>
+ <attribute name="callbackInterface" type="anyURI" use="optional"/>
+ <anyAttribute namespace="##any" processContents="lax"/>
+ </extension>
+ </complexContent>
+ </complexType>
+</schema>
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-wsdl.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca-interface-wsdl.xsd
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca.xsd
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca.xsd?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca.xsd (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca.xsd Fri Jun 9 23:03:59 2006
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.osoa.org/xmlns/sca/0.9"
+ xmlns:sca="http://www.osoa.org/xmlns/sca/0.9">
+
+ <include schemaLocation="sca-core.xsd"/>
+
+ <include schemaLocation="sca-interface-java.xsd"/>
+ <include schemaLocation="sca-interface-wsdl.xsd"/>
+
+ <include schemaLocation="sca-implementation-java.xsd"/>
+
+ <include schemaLocation="sca-binding-webservice.xsd"/>
+ <include schemaLocation="sca-binding-sca.xsd"/>
+
+</schema>
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca.xsd
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/main/resources/schemas/sca.xsd
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/CallbackTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/CallbackTestCase.java?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/CallbackTestCase.java (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/CallbackTestCase.java Fri Jun 9 23:03:59 2006
@@ -0,0 +1,68 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.osoa.sca.annotations;
+
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+
+import junit.framework.TestCase;
+import org.osoa.sca.annotations.usage.CallbackType;
+
+/**
+ * Test case for callback annotation.
+ *
+ * @version $Rev: 388784 $ $Date: 2006-03-25 08:34:51 -0800 (Sat, 25 Mar 2006) $
+ */
+public class CallbackTestCase extends TestCase {
+ private Class<?> type;
+ private Field field;
+ private Method method;
+
+ /**
+ * Test annotation of a callback interface.
+ */
+ public void testTypeDeclaration() {
+ assertTrue(type.isAnnotationPresent(Callback.class));
+ Callback callback = type.getAnnotation(Callback.class);
+ assertEquals(Object.class, callback.value());
+ }
+
+ /**
+ * Test annotation of a private field.
+ */
+ public void testField() {
+ assertTrue(field.isAnnotationPresent(Callback.class));
+ Callback callback = field.getAnnotation(Callback.class);
+ assertEquals(Void.class, callback.value());
+ }
+
+ /**
+ * Test annotation of a method.
+ */
+ public void testMethod() {
+ assertTrue(method.isAnnotationPresent(Callback.class));
+ Callback callback = method.getAnnotation(Callback.class);
+ assertEquals(Void.class, callback.value());
+ }
+
+ protected void setUp() throws Exception {
+ super.setUp();
+ type = CallbackType.class;
+ field = type.getDeclaredField("cbField");
+ method = type.getMethod("cbMethod");
+ }
+}
\ No newline at end of file
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/CallbackTestCase.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/CallbackTestCase.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Added: incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/usage/CallbackType.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/usage/CallbackType.java?rev=413256&view=auto
==============================================================================
--- incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/usage/CallbackType.java (added)
+++ incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/usage/CallbackType.java Fri Jun 9 23:03:59 2006
@@ -0,0 +1,47 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.osoa.sca.annotations.usage;
+
+import org.osoa.sca.annotations.Callback;
+
+/**
+ * Mock object for callback annotation tests.
+ *
+ * @version $Rev: 388784 $ $Date: 2006-03-25 08:34:51 -0800 (Sat, 25 Mar 2006) $
+ */
+@Callback(Object.class)
+public class CallbackType {
+ @Callback
+ private Object cbField;
+
+ /**
+ * Site for testing annotation of a public method.
+ */
+ @Callback
+ public void cbMethod() {
+ cbField = new Object();
+ }
+
+ /**
+ * Mock method to make IDEs stop complaining.
+ *
+ * @return nothing
+ */
+ public Object getCbField() {
+ return cbField;
+ }
+}
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/usage/CallbackType.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/sandbox/jboynes/spec/sca/src/test/java/org/osoa/sca/annotations/usage/CallbackType.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org