X-Git-Url: https://git.argeo.org/?p=gpl%2Fargeo-suite.git;a=blobdiff_plain;f=org.argeo.suite.core%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fcore%2FDefaultSuiteAppService.java;fp=org.argeo.suite.core%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fcore%2FDefaultSuiteAppService.java;h=0000000000000000000000000000000000000000;hp=b87527af828b30736790d6a85a5f0bc30934dde9;hb=4186dac38affdaff2550aef65fbc37fe3463c3ff;hpb=5bbce644be337f1ad9916c23dba141ad1f38b3ba diff --git a/org.argeo.suite.core/src/org/argeo/suite/core/DefaultSuiteAppService.java b/org.argeo.suite.core/src/org/argeo/suite/core/DefaultSuiteAppService.java deleted file mode 100644 index b87527a..0000000 --- a/org.argeo.suite.core/src/org/argeo/suite/core/DefaultSuiteAppService.java +++ /dev/null @@ -1,107 +0,0 @@ -package org.argeo.suite.core; - -import java.util.List; - -import javax.jcr.Node; -import javax.jcr.RepositoryException; -import javax.jcr.Session; - -import org.argeo.connect.AppService; -import org.argeo.connect.SystemAppService; -import org.argeo.eclipse.ui.EclipseUiUtils; -import org.argeo.suite.SuiteConstants; -import org.argeo.suite.SuiteException; - -public class DefaultSuiteAppService implements SystemAppService { - - // Injected known AppWorkbenchServices: order is important, first found - // result will be returned by the various methods. - private List knownAppServices; - - @Override - public Node publishEntity(Node parent, String nodeType, Node srcNode, boolean removeSrcNode) - throws RepositoryException { - for (AppService appService : knownAppServices) { - if (appService.isKnownType(nodeType)) - return appService.publishEntity(parent, nodeType, srcNode, removeSrcNode); - } - return null; - } - - @Override - public String getAppBaseName() { - return SuiteConstants.SUITE_APP_BASE_NAME; - } - - @Override - public String getBaseRelPath(String nodeType) { - for (AppService appService : knownAppServices) { - if (appService.isKnownType(nodeType)) - return appService.getBaseRelPath(nodeType); - } - return null; - // return getAppBaseName(); - } - - @Override - public String getDefaultRelPath(Node entity) throws RepositoryException { - for (AppService appService : knownAppServices) { - if (appService.isKnownType(entity)) - return appService.getDefaultRelPath(entity); - } - return null; - } - - @Override - public String getMainNodeType(Node node) { - for (AppService appService : knownAppServices) { - String foundType = appService.getMainNodeType(node); - if (EclipseUiUtils.notEmpty(foundType)) - return foundType; - } - return null; - } - - @Override - public String getDefaultRelPath(Session session, String nodetype, String id) { - for (AppService appService : knownAppServices) { - if (appService.isKnownType(nodetype)) - return appService.getDefaultRelPath(session, nodetype, id); - } - return null; - } - - /** Insures the correct service is called on save */ - @Override - public Node saveEntity(Node entity, boolean publish) { - for (AppService appService : knownAppServices) { - if (appService.isKnownType(entity)) - return appService.saveEntity(entity, publish); - } - throw new SuiteException("Unknown NodeType for " + entity + ". Cannot save"); - // return AppService.super.saveEntity(entity, publish); - } - - @Override - public boolean isKnownType(Node entity) { - for (AppService appService : knownAppServices) { - if (appService.isKnownType(entity)) - return true; - } - return false; - } - - @Override - public boolean isKnownType(String nodeType) { - for (AppService appService : knownAppServices) { - if (appService.isKnownType(nodeType)) - return true; - } - return false; - } - - public void setKnownAppServices(List knownAppServices) { - this.knownAppServices = knownAppServices; - } - -}