|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2004 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.modules.javacore.jmiimpl.javamodel; import java.util.List; import org.netbeans.mdr.storagemodel.StorableClass; import org.netbeans.jmi.javamodel.*; import org.netbeans.modules.javacore.jmiimpl.javamodel.*; import org.netbeans.mdr.handlers.ClassProxyHandler; import org.netbeans.mdr.persistence.StorageException; import org.netbeans.mdr.storagemodel.StorableBaseObject; import org.netbeans.modules.javacore.ClassIndex; /** * * @author Pavel Flaska */ public abstract class AnnotationTypeClassImpl extends ClassProxyHandler implements AnnotationTypeClass { /** Creates a new instance of AnnotationTypeClassImpl */ public AnnotationTypeClassImpl(StorableClass s) { super(s); } public AnnotationType createAnnotationType() { return create(null, null, 0, null, null, null, null, null, null); } public AnnotationType createAnnotationType(String name, List annotations, int modifiers, String javadocText, JavaDoc javadoc, List contents, MultipartId superClassName, List interfaceNames, List typeParameters) { return create(name, annotations, modifiers, javadocText, javadoc, contents, superClassName, interfaceNames, typeParameters); } protected abstract AnnotationType super_createAnnotationType(); protected abstract AnnotationType super_createAnnotationType(String name, List annotations, int modifiers, String javadocText, JavaDoc javadoc, List contents, MultipartId superClassName, List interfaceNames, List typeParameters); public Type resolve(String name) { throw new UnsupportedOperationException("resolve()"); // NOI18N } protected SemiPersistentElement createTransient() { try { StorableBaseObject s = _getDelegate(); DeferredObject o = new DeferredObject(null, s.getMdrStorage(), s.getImmediatePackageId(), s.getOutermostPackageId(), s.getMetaObject(), (StorableClass) s, null, true); SemiPersistentElement result = (SemiPersistentElement) _getRepository().getHandler(o); return result; } catch (StorageException e) { throw new RuntimeException(); } } public AnnotationTypeImpl create(String name, int modifiers, boolean isTransient) { AnnotationTypeImpl result; if (isTransient) { result = (AnnotationTypeImpl) createTransient(); result.setName(name); result.setModifiers(modifiers); } else { result = (AnnotationTypeImpl) super_createAnnotationType(name, null, modifiers, null, null, null, null, null, null); if (name != null) { JavaModelPackage srcExtent = (JavaModelPackage) refOutermostPackage(); ClassIndex index = ClassIndex.getIndex(srcExtent); index.addClass(result, name, result.getSimpleName()); } } return result; } private AnnotationTypeImpl create(String name, List annotations, int modifiers, String javadocText, JavaDoc javadoc, List contents, MultipartId superClassName, List interfaceNames, List typeParameters) { boolean fail = true; _lock(true); try { AnnotationTypeImpl result = create(name, modifiers, false); result.setNew(); result.setData(annotations, javadocText, javadoc); fail = false; return result; } finally { _unlock(fail); } } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.