01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package org.apache.servicemix.jbi.servicedesc;
18:
19: import java.io.Serializable;
20:
21: import javax.jbi.servicedesc.ServiceEndpoint;
22:
23: import org.apache.servicemix.jbi.framework.ComponentNameSpace;
24:
25: public abstract class AbstractServiceEndpoint implements
26: ServiceEndpoint, Serializable {
27:
28: private ComponentNameSpace componentName;
29: private String key;
30: private String uniqueKey;
31:
32: public AbstractServiceEndpoint(ComponentNameSpace componentName) {
33: this .componentName = componentName;
34: }
35:
36: protected AbstractServiceEndpoint() {
37: }
38:
39: /**
40: * get the id of the ComponentConnector
41: * @return the id
42: */
43: public ComponentNameSpace getComponentNameSpace() {
44: return componentName;
45: }
46:
47: public void setComponentName(ComponentNameSpace componentName) {
48: this .componentName = componentName;
49: }
50:
51: public String getKey() {
52: if (key == null) {
53: key = EndpointSupport.getKey(getServiceName(),
54: getEndpointName());
55: }
56: return key;
57: }
58:
59: public String getUniqueKey() {
60: if (uniqueKey == null) {
61: uniqueKey = getClassifier() + ":" + getKey();
62: }
63: return uniqueKey;
64: }
65:
66: protected abstract String getClassifier();
67: }
|