summaryrefslogtreecommitdiffstats
path: root/tags/java-M1-final/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ComponentTypeImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'tags/java-M1-final/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ComponentTypeImpl.java')
-rw-r--r--tags/java-M1-final/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ComponentTypeImpl.java147
1 files changed, 0 insertions, 147 deletions
diff --git a/tags/java-M1-final/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ComponentTypeImpl.java b/tags/java-M1-final/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ComponentTypeImpl.java
deleted file mode 100644
index 617206b6af..0000000000
--- a/tags/java-M1-final/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ComponentTypeImpl.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/**
- *
- * 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.apache.tuscany.model.assembly.impl;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.tuscany.model.assembly.AssemblyContext;
-import org.apache.tuscany.model.assembly.AssemblyVisitor;
-import org.apache.tuscany.model.assembly.ComponentType;
-import org.apache.tuscany.model.assembly.Port;
-import org.apache.tuscany.model.assembly.Property;
-import org.apache.tuscany.model.assembly.Reference;
-import org.apache.tuscany.model.assembly.Service;
-import org.apache.tuscany.model.util.NotifyingList;
-
-/**
- * An implementation of ComponentType.
- */
-public class ComponentTypeImpl extends ExtensibleImpl implements ComponentType {
-
- /**
- * A list of ports synchronized with a map
- */
- private class PortList<E extends Port> extends NotifyingList<E>{
-
- Map<String, E> map;
-
- private PortList(Map<String, E> map) {
- this.map=map;
- }
-
- protected void added(E element) {
- map.put(element.getName(), element);
- }
- protected void removed(E element) {
- map.remove(element.getName());
- }
- }
-
- private Map<String, Reference> referencesMap=new HashMap<String, Reference>();
- private List<Reference> references=new PortList<Reference>(referencesMap);
-
- private Map<String, Service> servicesMap=new HashMap<String, Service>();
- private List<Service> services=new PortList<Service>(servicesMap);
-
- /**
- * A list of properties synchronized with a map
- */
- private class PropertyList<E extends Property> extends NotifyingList<E>{
-
- protected void added(E element) {
- propertiesMap.put(element.getName(), element);
- }
- protected void removed(E element) {
- propertiesMap.remove(element.getName());
- }
- }
-
- private Map<String, Property> propertiesMap=new HashMap<String, Property>();
- private List<Property> properties=new PropertyList<Property>();
-
- protected ComponentTypeImpl() {
- }
-
- public List<Reference> getReferences() {
- return references;
- }
-
- public Reference getReference(String name) {
- return referencesMap.get(name);
- }
-
- public List<Service> getServices() {
- return services;
- }
-
- public Service getService(String name) {
- return servicesMap.get(name);
- }
-
- public List<Property> getProperties() {
- return properties;
- }
-
- public Property getProperty(String name) {
- return propertiesMap.get(name);
- }
-
- public void initialize(AssemblyContext modelContext) {
- if (isInitialized())
- return;
- super.initialize(modelContext);
-
- // Initialize references, properties and services
- for (Reference reference : references) {
- reference.initialize(modelContext);
- }
- for (Property property : properties) {
- property.initialize(modelContext);
- }
- for (Service service : services) {
- service.initialize(modelContext);
- }
- }
-
- public void freeze() {
- if (isFrozen())
- return;
- super.freeze();
-
- // Freeze lists of services, references and properties
- services=freeze(services);
- references=freeze(references);
- properties=freeze(properties);
- }
-
- public boolean accept(AssemblyVisitor visitor) {
- if (!super.accept(visitor))
- return false;
-
- if (!accept(services, visitor))
- return false;
- if (!accept(references, visitor))
- return false;
- if (!accept(properties, visitor))
- return false;
-
- return true;
- }
-
-}