00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 package org.objectweb.proactive.core.component;
00032
00033 import java.io.Serializable;
00034 import java.util.ArrayList;
00035
00036 import org.objectweb.fractal.api.type.ComponentType;
00037 import org.objectweb.fractal.api.type.InterfaceType;
00038
00039
00051 public class ComponentParameters implements Serializable {
00052 private ComponentType componentType;
00053 private ControllerDescription controllerDesc;
00054
00060 public ComponentParameters(String name, String hierarchicalType,
00061 ComponentType componentType) {
00062 this(componentType, new ControllerDescription(name, hierarchicalType));
00063 }
00064
00072 public ComponentParameters(String name, String hierarchicalType,
00073 ComponentType componentType, String controllerConfigFileLocation) {
00074 this(componentType, new ControllerDescription(name, hierarchicalType, controllerConfigFileLocation));
00075 }
00076
00082 public ComponentParameters(ComponentType componentType,
00083 ControllerDescription controllerDesc) {
00084 this.componentType = componentType;
00085 this.controllerDesc = controllerDesc;
00086 }
00087
00088
00093 public void setName(String name) {
00094 controllerDesc.setName(name);
00095 }
00096
00101 public ComponentType getComponentType() {
00102 return componentType;
00103 }
00104
00109 public ControllerDescription getControllerDescription() {
00110 return controllerDesc;
00111 }
00112
00117 public void setComponentType(ComponentType componentType) {
00118 this.componentType = componentType;
00119 }
00120
00125 public void setHierarchicalType(String string) {
00126 controllerDesc.setHierarchicalType(string);
00127 }
00128
00133 public String getName() {
00134 return controllerDesc.getName();
00135 }
00136
00141 public String getHierarchicalType() {
00142 return controllerDesc.getHierarchicalType();
00143 }
00144
00148 public InterfaceType[] getServerInterfaceTypes() {
00149 ArrayList server_interfaces = new ArrayList();
00150 InterfaceType[] interfaceTypes = componentType.getFcInterfaceTypes();
00151 for (int i = 0; i < interfaceTypes.length; i++) {
00152 if (!interfaceTypes[i].isFcClientItf()) {
00153 server_interfaces.add(interfaceTypes[i]);
00154 }
00155 }
00156 return (InterfaceType[]) server_interfaces.toArray(new InterfaceType[server_interfaces.size()]);
00157 }
00158
00162 public InterfaceType[] getClientInterfaceTypes() {
00163 return Fractive.getClientInterfaceTypes(componentType);
00164 }
00165
00170 public InterfaceType[] getInterfaceTypes() {
00171 return componentType.getFcInterfaceTypes();
00172 }
00173 }