1 27 package org.objectweb.openccm.Containers.MetaInformation; 28 29 import org.objectweb.ccm.util.Table; 30 import org.omg.CORBA.LocalObject ; 31 import org.omg.Components.InvalidName; 32 33 39 public class EmitterPortInstanceListImpl 40 extends LocalObject 41 implements EmitterPortInstanceList 42 { 43 private Table _emitters; 44 45 public EmitterPortInstanceListImpl() 46 { 47 _emitters = new Table(); 48 } 49 50 53 public EmitterPortInstance 54 get_emitter_port_instance(String name) 55 throws InvalidName 56 { 57 EmitterPortInstance result = (EmitterPortInstance) _emitters.get(name); 58 if(result == null) 59 throw new InvalidName(); 60 return result; 61 } 62 63 66 public EmitterPortInstance[] 67 get_named_emitter_port_instances(String [] names) 68 throws InvalidName 69 { 70 EmitterPortInstance[] result = new EmitterPortInstance[names.length]; 71 72 74 int i = 0; 75 for(i=0;i<names.length;i++) 76 { 77 result[i] = (EmitterPortInstance)_emitters.get(names[i]); 78 79 if(result[i] == null) 80 { 81 throw new InvalidName(); 82 } 83 } 84 85 return result; 86 } 87 88 91 public EmitterPortInstance[] 92 get_all_emitter_port_instances() 93 { 94 EmitterPortInstance[] result = new EmitterPortInstance[_emitters.size()]; 95 96 int idx = 0; 98 for(java.util.Enumeration elements = _emitters.elements(); elements.hasMoreElements(); ) 99 { 100 EmitterPortInstance info = (EmitterPortInstance)elements.nextElement(); 101 result[idx++] = info; 102 } 103 return result; 104 } 105 106 109 public void add_emitter_port_instance(EmitterPortInstance cpi) 110 { 111 String key = cpi.type_reference().name() ; _emitters.put(key,cpi); 113 114 } 115 116 119 public void remove_emitter_port_instance(String name) 120 throws InvalidName 121 { 122 Object result = _emitters.remove(name); 123 124 if (result == null) throw new InvalidName(); 125 } 126 } 127 | Popular Tags |