summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java
diff options
context:
space:
mode:
authorlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2013-10-07 22:23:21 +0000
committerlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2013-10-07 22:23:21 +0000
commit5963a2d3d6860fe57afc138f095bf2d2eb5a7b80 (patch)
tree018d3d8c637e265b8292d34e5f7c11ca8ce11b7d /sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java
parent132aa8a77685ec92bc90c03f987650d275a7b639 (diff)
Official Tuscany 2.0.1 Release
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1530096 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java')
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java289
1 files changed, 0 insertions, 289 deletions
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java
deleted file mode 100644
index ac0c7c93a8..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java
+++ /dev/null
@@ -1,289 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you 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.apache.tuscany.sca.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.EndpointReference;
-import org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint;
-import org.apache.tuscany.sca.assembly.builder.ContractBuilder;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * The assembly model object for an endpoint.
- *
- * @version $Rev$ $Date$
- */
-public class EndpointReferenceImpl implements EndpointReference {
- private static final long serialVersionUID = 8838066441709300972L;
-
- protected transient ExtensionPointRegistry registry;
- protected transient BuilderExtensionPoint builders;
- protected transient ContractBuilder contractBuilder;
- protected boolean unresolved = true;
- protected String uri;
- protected String deployedURI;
- protected Component component;
- protected ComponentReference reference;
- protected Binding binding;
- protected List<PolicySet> policySets = new ArrayList<PolicySet>();
- protected List<Intent> requiredIntents = new ArrayList<Intent>();
- protected InterfaceContract interfaceContract;
- protected Status status = Status.NOT_CONFIGURED;
-
- // the target of the endpoint reference
- protected Endpoint targetEndpoint;
-
- // callback endpoint that messages across this reference
- // will be directed toward
- protected Endpoint callbackEndpoint;
-
- protected EndpointReferenceImpl(ExtensionPointRegistry registry) {
- this.registry = registry;
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- EndpointReference cloned = (EndpointReference)super.clone();
-
- if (targetEndpoint != null) {
- cloned.setTargetEndpoint((Endpoint)targetEndpoint.clone());
- }
-
- return cloned;
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.unresolved = unresolved;
- }
-
- public Component getComponent() {
- resolve();
- return component;
- }
-
- public void setComponent(Component component) {
- this.component = component;
- reset();
- }
-
- public ComponentReference getReference() {
- resolve();
- return reference;
- }
-
- public void setReference(ComponentReference reference) {
- this.reference = reference;
- reset();
- }
-
- public Binding getBinding() {
- resolve();
- return binding;
- }
-
- public void setBinding(Binding binding) {
- this.binding = binding;
- reset();
- }
-
- public Endpoint getTargetEndpoint() {
- resolve();
- return targetEndpoint;
- }
-
- public void setTargetEndpoint(Endpoint targetEndpoint) {
- this.targetEndpoint = targetEndpoint;
- reset();
- }
-
- public InterfaceContract getComponentReferenceInterfaceContract() {
- resolve();
- if (interfaceContract == null && reference != null) {
- interfaceContract = reference.getInterfaceContract();
- }
- return interfaceContract;
- }
-
- public void setInterfaceContract(InterfaceContract interfaceContract) {
- this.interfaceContract = interfaceContract;
- reset();
- }
-
- public List<PolicySet> getPolicySets() {
- resolve();
- return policySets;
- }
-
- public List<Intent> getRequiredIntents() {
- resolve();
- return requiredIntents;
- }
-
- public ExtensionType getExtensionType() {
- getBinding();
- if (binding instanceof PolicySubject) {
- return ((PolicySubject)binding).getExtensionType();
- }
- return null;
- }
-
- public void setExtensionType(ExtensionType type) {
- throw new UnsupportedOperationException();
- }
-
- public Endpoint getCallbackEndpoint() {
- resolve();
- return callbackEndpoint;
- }
-
- public void setCallbackEndpoint(Endpoint callbackEndpoint) {
- this.callbackEndpoint = callbackEndpoint;
- reset();
- }
-
- public String toStringWithoutHash() {
- StringBuffer output = new StringBuffer("EndpointReference: ");
-
- if (getURI() != null) {
- output.append(" URI = ").append(getURI());
- }
-
- output.append(" ").append(status);
-
- if (targetEndpoint != null) {
- output.append(" Target = ").append(targetEndpoint);
- }
-
- return output.toString();
- }
-
- public String toString() {
- return "(@" + this.hashCode() + ")" + toStringWithoutHash();
- }
-
- public String getURI() {
- if (uri == null) {
- if (component != null && reference != null && binding != null) {
- String bindingName = binding.getName();
- if (bindingName == null) {
- bindingName = reference.getName();
- }
- uri = component.getURI() + "#reference-binding(" + reference.getName() + "/" + bindingName + ")";
- } else if (component != null && reference != null) {
- uri = component.getURI() + "#reference(" + reference.getName() + ")";
- } else if (component != null) {
- uri = component.getURI();
- }
- }
- return uri;
- }
-
- public void setURI(String uri) {
- this.uri = uri;
- }
-
- protected void resolve() {
- }
-
- protected void reset() {
- this.uri = null;
- }
-
- public void setExtensionPointRegistry(ExtensionPointRegistry registry) {
- this.registry = registry;
- }
-
- public Status getStatus() {
- return status;
- }
-
- public void setStatus(Status status) {
- this.status = status;
- }
-
- @Override
- public String getDeployedURI() {
- String targetURI = deployedURI;
- if (targetURI != null) {
- return targetURI;
- }
- if (getTargetEndpoint() != null) {
- targetURI = getTargetEndpoint().getDeployedURI();
- }
- if (targetURI != null) {
- return targetURI;
- }
- if (binding != null) {
- targetURI = binding.getURI();
- }
- return targetURI;
- }
-
- @Override
- public void setDeployedURI(String deployedURI) {
- this.deployedURI = deployedURI;
- }
-
- /**
- * Indicates whether this EndpointReference is connected to a target service which is asynchronous.
- * This can be marked in one of 3 ways:
- * - the EndpointReference has the "asyncInvocation" intent set
- * - the EndpointReference has a name ending with "_asyncCallback"
- * - there is a target Endpoint configured that itself is marked as async invocation
- * @return - true if the service is asynchronous invocation, false otherwise
- */
- public boolean isAsyncInvocation() {
- if (reference != null && reference.getName().endsWith("_asyncCallback")){
- // this is a response reference at the service component so don't create a
- // response service. The response service will be at the reference component
- return false;
- } // end if
-
- // Check if the EndpointReference is explicitly marked with the asyncInvocation intent
- for(Intent intent : getRequiredIntents()){
- if (intent.getName().getLocalPart().equals("asyncInvocation")){
- return true;
- } // end if
- } // end for
-
- // Check if the target Endpoint is marked as asyncInvocation
- if( targetEndpoint != null ) {
- if (targetEndpoint.isAsyncInvocation()) {
- return true;
- } // end if
- } // end if
- return false;
- } // end method isAsyncInvocation
-
-} // end class EndpointReferenceImpl