Package manifold.api.json
Class AbstractJsonTypeManifold<T extends JsonModel>
- java.lang.Object
-
- manifold.api.service.BaseService
-
- manifold.api.type.ResourceFileTypeManifold<M>
-
- manifold.api.type.JavaTypeManifold<T>
-
- manifold.api.json.AbstractJsonTypeManifold<T>
-
- All Implemented Interfaces:
manifold.api.service.IPluginHost,manifold.api.service.IService,manifold.api.type.IFileConnected,manifold.api.type.ISelfCompiled,manifold.api.type.ITypeManifold
- Direct Known Subclasses:
JsonTypeManifold
public abstract class AbstractJsonTypeManifold<T extends JsonModel> extends manifold.api.type.JavaTypeManifold<T>A base class for a Type Manifold modeled with aJsonModele.g., parses its resource to aBindings. For instance, both the JSON and YAML manifolds extend this class because they both parse to a commonBindingsbased model.
-
-
Constructor Summary
Constructors Constructor Description AbstractJsonTypeManifold()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Stringcontribute(JavaFileManager.Location location, String topLevelFqn, boolean genStubs, String existing, T model, DiagnosticListener<JavaFileObject> errorHandler)protected booleanisApiInnerClass(String topLevel, String relativeInner)These inner classes are generated as part of the API, as opposed to being defined in JSON.booleanisInnerType(String topLevel, String relativeInner)-
Methods inherited from class manifold.api.type.JavaTypeManifold
getClassType, getContributorKind, getSourceKind
-
Methods inherited from class manifold.api.type.ResourceFileTypeManifold
clear, contribute, createCacheClearer, findFilesForType, findTopLevelFqn, getAdditionalTypes, getAllTypeNames, getContent, getModel, getModule, getPackage, getPeripheralTypes, getTypeNameForFile, getTypeNames, getTypesForFile, handlesFile, init, init, isDuplicate, isFileBacked, isPackage, isTopLevelType, isType, refreshedFile
-
Methods inherited from class manifold.api.service.BaseService
doInit, doUninit, init, isInited, uninit
-
-
-
-
Method Detail
-
isApiInnerClass
protected boolean isApiInnerClass(String topLevel, String relativeInner)
These inner classes are generated as part of the API, as opposed to being defined in JSON.- Parameters:
topLevel- The name of the enclosing class ofrelativeInnerrelativeInner- The name of an API inner class to test for- Returns:
- true if
relativeInneris an inner class generated by the API
-
contribute
protected String contribute(JavaFileManager.Location location, String topLevelFqn, boolean genStubs, String existing, T model, DiagnosticListener<JavaFileObject> errorHandler)
-
-