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;h=b87527af828b30736790d6a85a5f0bc30934dde9;hp=ea5dc23e53996bda065ea034a876320630825387;hb=5bbce644be337f1ad9916c23dba141ad1f38b3ba;hpb=1f5e67056c6bb49a81afe4ec5b4f24b3cfd14121 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 index ea5dc23..b87527a 100644 --- a/org.argeo.suite.core/src/org/argeo/suite/core/DefaultSuiteAppService.java +++ b/org.argeo.suite.core/src/org/argeo/suite/core/DefaultSuiteAppService.java @@ -4,9 +4,11 @@ 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; @@ -17,11 +19,11 @@ public class DefaultSuiteAppService implements SystemAppService { private List knownAppServices; @Override - public Node createEntity(Node parent, String nodeType, Node srcNode, boolean removeSrcNode) + public Node publishEntity(Node parent, String nodeType, Node srcNode, boolean removeSrcNode) throws RepositoryException { for (AppService appService : knownAppServices) { if (appService.isKnownType(nodeType)) - return appService.createEntity(parent, nodeType, srcNode, removeSrcNode); + return appService.publishEntity(parent, nodeType, srcNode, removeSrcNode); } return null; } @@ -51,10 +53,20 @@ public class DefaultSuiteAppService implements SystemAppService { } @Override - public String getDefaultRelPath(String nodetype, String id) { + 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(nodetype, id); + return appService.getDefaultRelPath(session, nodetype, id); } return null; }