/** * Find a {@link JavaClassModel} by the qualified name, returning a single result. If more than one result is available, a * {@link AmbiguousJavaClassModel} reference will be returned. */ public JavaClassModel getByName(String qualifiedName) throws NonUniqueResultException { ExecutionStatistics.get().begin("getUniqueByName(qualifiedName)"); JavaClassModel result = resolveByQualifiedName(qualifiedName); ExecutionStatistics.get().end("getUniqueByName(qualifiedName)"); return result; }
/** * Find a {@link JavaClassModel} by the qualified name, returning a single result. If more than one result is available, a * {@link AmbiguousJavaClassModel} reference will be returned. */ public JavaClassModel getByName(String qualifiedName) throws NonUniqueResultException { ExecutionStatistics.get().begin("getUniqueByName(qualifiedName)"); JavaClassModel result = resolveByQualifiedName(qualifiedName); ExecutionStatistics.get().end("getUniqueByName(qualifiedName)"); return result; }
/** * Find a {@link JavaClassModel} by the qualified name, returning a single result. If more than one result is available, a * {@link AmbiguousJavaClassModel} reference will be returned. */ public JavaClassModel getByName(String qualifiedName) throws NonUniqueResultException { ExecutionStatistics.get().begin("getUniqueByName(qualifiedName)"); JavaClassModel result = resolveByQualifiedName(qualifiedName); ExecutionStatistics.get().end("getUniqueByName(qualifiedName)"); return result; }
/** * Gets an existing {@link JavaClassModel}, however if none currently exists, then create a {@link PhantomJavaClassModel}.<br/> * * This is intended to indicate that we know about a class by reference (for example another class subclasses it, or it is referenced in an XML * file), but we do not yet have a location on the disk for the class (or source) file itself. * * To create a class (possibly converting a {@link PhantomJavaClassModel} to concrete in the process), use {@link JavaClassService#create(String)} * instead. */ public synchronized JavaClassModel getOrCreatePhantom(String qualifiedName) { JavaClassModel result = resolveByQualifiedName(qualifiedName); if (result == null) { // create a phantom result = new GraphService<>(getGraphContext(), PhantomJavaClassModel.class).create(); setPropertiesFromName(result, qualifiedName); } return result; }
/** * Gets an existing {@link JavaClassModel}, however if none currently exists, then create a {@link PhantomJavaClassModel}.<br/> * * This is intended to indicate that we know about a class by reference (for example another class subclasses it, or it is referenced in an XML * file), but we do not yet have a location on the disk for the class (or source) file itself. * * To create a class (possibly converting a {@link PhantomJavaClassModel} to concrete in the process), use {@link JavaClassService#create(String)} * instead. */ public synchronized JavaClassModel getOrCreatePhantom(String qualifiedName) { JavaClassModel result = resolveByQualifiedName(qualifiedName); if (result == null) { // create a phantom result = new GraphService<>(getGraphContext(), PhantomJavaClassModel.class).create(); setPropertiesFromName(result, qualifiedName); } return result; }
/** * Gets an existing {@link JavaClassModel}, however if none currently exists, then create a {@link PhantomJavaClassModel}.<br/> * * This is intended to indicate that we know about a class by reference (for example another class subclasses it, or it is referenced in an XML * file), but we do not yet have a location on the disk for the class (or source) file itself. * * To create a class (possibly converting a {@link PhantomJavaClassModel} to concrete in the process), use {@link JavaClassService#create(String)} * instead. */ public synchronized JavaClassModel getOrCreatePhantom(String qualifiedName) { JavaClassModel result = resolveByQualifiedName(qualifiedName); if (result == null) { // create a phantom result = new GraphService<>(getGraphContext(), PhantomJavaClassModel.class).create(); setPropertiesFromName(result, qualifiedName); } return result; }