1 26 27 package org.objectweb.openccm.ast.lib; 28 29 30 import org.objectweb.openccm.ast.api.DeclarationKind; 31 32 import org.objectweb.openccm.ast.api.AbstractStorageTypeDecl; 33 34 55 56 public class AbstractStorageHomeDeclImpl 57 extends StorageHomeBaseImpl 58 implements org.objectweb.openccm.ast.api.AbstractStorageHomeDecl 59 { 60 66 67 protected AbstractStorageTypeDeclImpl managedAbstractStorageType_; 68 69 70 protected org.objectweb.openccm.ast.api.NativeDecl mapping_; 71 72 78 83 protected 84 AbstractStorageHomeDeclImpl(Repository rep, 85 ScopeImpl parent) 86 { 87 super(rep, parent); 89 90 managedAbstractStorageType_ = null; 92 mapping_ = null; 93 } 94 95 101 107 114 public long 115 getDeclKind() 116 { 117 return DeclarationKind.dk_abstract_storage_home; 118 } 119 120 126 132 138 144 150 156 162 165 public void 166 check() 167 { 168 super.check(managedAbstractStorageType_); 170 } 171 172 178 184 190 196 201 public void 202 setAbstractStorageType(AbstractStorageTypeDecl mast) 203 { 204 if(mast != null) 205 { 206 managedAbstractStorageType_ = (AbstractStorageTypeDeclImpl)mast; 207 } 208 } 209 210 215 public AbstractStorageTypeDecl 216 getAbstractStorageType() 217 { 218 return managedAbstractStorageType_; 219 } 220 221 226 public org.objectweb.openccm.ast.api.NativeDecl 227 getMapping() 228 { 229 if (mapping_ == null) 230 { 231 ScopeImpl module = (ScopeImpl)getParent(); 232 233 mapping_ = module.startNative(getName()); 234 ((NativeDeclImpl)mapping_).setIDLType( module.getContainer(). 236 create_native(mapping_.getId(), mapping_.getName(), mapping_.getVersion()) ); 237 } 238 return mapping_; 239 } 240 } 241 | Popular Tags |