/** * Copyright 2004-2016 Riccardo Solmi. All rights reserved. * This file is part of the Whole Platform. * * The Whole Platform is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * The Whole Platform is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with the Whole Platform. If not, see <http://www.gnu.org/licenses/>. */ package org.whole.lang.reusables.factories; import org.whole.lang.factories.GenericEntityFactory; import org.whole.lang.reusables.model.*; import org.whole.lang.factories.RegistryConfigurations; import org.whole.lang.factories.IEntityRegistryProvider; import org.whole.lang.reusables.reflect.ReusablesEntityDescriptorEnum; import org.whole.lang.factories.IEntityBuilder; import org.whole.lang.factories.EntityBuilder; import org.whole.lang.model.IEntity; /** * @generator Whole */ public class ReusablesEntityFactory extends GenericEntityFactory { public static final ReusablesEntityFactory instance = instance(RegistryConfigurations.DEFAULT); public static ReusablesEntityFactory instance(IEntityRegistryProvider provider) { return new ReusablesEntityFactory(provider); } protected ReusablesEntityFactory(IEntityRegistryProvider provider) { super(provider); } public Adapt createAdapt() { return create(ReusablesEntityDescriptorEnum.Adapt); } public Adapt createAdapt(Reusable original, PathExpression adapter, Reusable adapted, Revision adaptedRevision) { return create(ReusablesEntityDescriptorEnum.Adapt, original, adapter, adapted, adaptedRevision); } public IEntityBuilder<Adapt> buildAdapt() { return new EntityBuilder<Adapt>(create(ReusablesEntityDescriptorEnum.Adapt)); } public Reuse createReuse() { return create(ReusablesEntityDescriptorEnum.Reuse); } public Reuse createReuse(Resource resource, Reusable original, PathExpression adapter, Reusable adapted, Revision adaptedRevision) { return create(ReusablesEntityDescriptorEnum.Reuse, resource, original, adapter, adapted, adaptedRevision); } public IEntityBuilder<Reuse> buildReuse() { return new EntityBuilder<Reuse>(create(ReusablesEntityDescriptorEnum.Reuse)); } public Sync createSync() { return create(ReusablesEntityDescriptorEnum.Sync); } public Sync createSync(Resource resource, Reusable original, PathExpression adapter, Reusable adapted, Revision adaptedRevision, Reusable variant, Revision variantRevision) { return create(ReusablesEntityDescriptorEnum.Sync, resource, original, adapter, adapted, adaptedRevision, variant, variantRevision); } public IEntityBuilder<Sync> buildSync() { return new EntityBuilder<Sync>(create(ReusablesEntityDescriptorEnum.Sync)); } public Include createInclude() { return create(ReusablesEntityDescriptorEnum.Include); } public Include createInclude(Resource resource) { return create(ReusablesEntityDescriptorEnum.Include, resource); } public Reusables createReusables() { return create(ReusablesEntityDescriptorEnum.Reusables); } public Reusables createReusables(Reusable... entities) { return create(ReusablesEntityDescriptorEnum.Reusables, (IEntity[]) entities); } public Reusables createReusables(int initialSize) { return clone(ReusablesEntityDescriptorEnum.Reusables, initialSize); } public Workspace createWorkspace() { return create(ReusablesEntityDescriptorEnum.Workspace); } public Workspace createWorkspace(Content content, Persistence persistence) { return create(ReusablesEntityDescriptorEnum.Workspace, content, persistence); } public IEntityBuilder<Workspace> buildWorkspace() { return new EntityBuilder<Workspace>(create(ReusablesEntityDescriptorEnum.Workspace)); } public FileSystem createFileSystem() { return create(ReusablesEntityDescriptorEnum.FileSystem); } public FileSystem createFileSystem(Content content, Persistence persistence) { return create(ReusablesEntityDescriptorEnum.FileSystem, content, persistence); } public IEntityBuilder<FileSystem> buildFileSystem() { return new EntityBuilder<FileSystem>(create(ReusablesEntityDescriptorEnum.FileSystem)); } public Classpath createClasspath() { return create(ReusablesEntityDescriptorEnum.Classpath); } public Classpath createClasspath(Content content, Persistence persistence) { return create(ReusablesEntityDescriptorEnum.Classpath, content, persistence); } public IEntityBuilder<Classpath> buildClasspath() { return new EntityBuilder<Classpath>(create(ReusablesEntityDescriptorEnum.Classpath)); } public URL createURL() { return create(ReusablesEntityDescriptorEnum.URL); } public URL createURL(Content content, Persistence persistence) { return create(ReusablesEntityDescriptorEnum.URL, content, persistence); } public IEntityBuilder<URL> buildURL() { return new EntityBuilder<URL>(create(ReusablesEntityDescriptorEnum.URL)); } public Model createModel() { return create(ReusablesEntityDescriptorEnum.Model); } public Model createModel(PathExpression content, Persistence persistence) { return create(ReusablesEntityDescriptorEnum.Model, content, persistence); } public IEntityBuilder<Model> buildModel() { return new EntityBuilder<Model>(create(ReusablesEntityDescriptorEnum.Model)); } public Registry createRegistry() { return create(ReusablesEntityDescriptorEnum.Registry); } public Registry createRegistry(URI registryUri, URI uri) { return create(ReusablesEntityDescriptorEnum.Registry, registryUri, uri); } public IEntityBuilder<Registry> buildRegistry() { return new EntityBuilder<Registry>(create(ReusablesEntityDescriptorEnum.Registry)); } public Load createLoad() { return create(ReusablesEntityDescriptorEnum.Load); } public Load createLoad(Resource resource) { return create(ReusablesEntityDescriptorEnum.Load, resource); } public Save createSave() { return create(ReusablesEntityDescriptorEnum.Save); } public Save createSave(Resource resource) { return create(ReusablesEntityDescriptorEnum.Save, resource); } public Contents createContents() { return create(ReusablesEntityDescriptorEnum.Contents); } public Contents createContents(Content... entities) { return create(ReusablesEntityDescriptorEnum.Contents, (IEntity[]) entities); } public Contents createContents(int initialSize) { return clone(ReusablesEntityDescriptorEnum.Contents, initialSize); } public Folder createFolder() { return create(ReusablesEntityDescriptorEnum.Folder); } public Folder createFolder(Path path, Content content, Persistence persistence) { return create(ReusablesEntityDescriptorEnum.Folder, path, content, persistence); } public IEntityBuilder<Folder> buildFolder() { return new EntityBuilder<Folder>(create(ReusablesEntityDescriptorEnum.Folder)); } public File createFile() { return create(ReusablesEntityDescriptorEnum.File); } public File createFile(Path path, Any content, Persistence persistence) { return create(ReusablesEntityDescriptorEnum.File, path, content, persistence); } public IEntityBuilder<File> buildFile() { return new EntityBuilder<File>(create(ReusablesEntityDescriptorEnum.File)); } public PathName createPathName() { return create(ReusablesEntityDescriptorEnum.PathName); } public PathName createPathName(String value) { return create(ReusablesEntityDescriptorEnum.PathName, value); } public PathWithExtension createPathWithExtension() { return create(ReusablesEntityDescriptorEnum.PathWithExtension); } public PathWithExtension createPathWithExtension(Path path, Path extension) { return create(ReusablesEntityDescriptorEnum.PathWithExtension, path, extension); } public IEntityBuilder<PathWithExtension> buildPathWithExtension() { return new EntityBuilder<PathWithExtension>(create(ReusablesEntityDescriptorEnum.PathWithExtension)); } public PathSegments createPathSegments() { return create(ReusablesEntityDescriptorEnum.PathSegments); } public PathSegments createPathSegments(Path... entities) { return create(ReusablesEntityDescriptorEnum.PathSegments, (IEntity[]) entities); } public PathSegments createPathSegments(int initialSize) { return clone(ReusablesEntityDescriptorEnum.PathSegments, initialSize); } public URI createURI() { return create(ReusablesEntityDescriptorEnum.URI); } public URI createURI(String value) { return create(ReusablesEntityDescriptorEnum.URI, value); } public PersistenceId createPersistenceId() { return create(ReusablesEntityDescriptorEnum.PersistenceId); } public PersistenceId createPersistenceId(String value) { return create(ReusablesEntityDescriptorEnum.PersistenceId, value); } }