Removed Environment from the Publishing Foundation API.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28957 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
N Smith
2011-07-12 14:41:36 +00:00
parent 2ebe76a72d
commit af57e9fb87
6 changed files with 32 additions and 50 deletions

View File

@@ -1122,9 +1122,9 @@
parent="webscript"> parent="webscript">
<property name="publishingService" ref="publishingService" /> <property name="publishingService" ref="publishingService" />
<property name="channelService" ref="channelService" /> <property name="channelService" ref="channelService" />
<property name="defaultEnvironmentId" value="${publishing.default.environment}" />
</bean> </bean>
<!-- Create a new Channel web script -->
<bean id="webscript.org.alfresco.repository.publishing.channel.post" <bean id="webscript.org.alfresco.repository.publishing.channel.post"
class="org.alfresco.repo.web.scripts.publishing.ChannelPostWebScript" class="org.alfresco.repo.web.scripts.publishing.ChannelPostWebScript"
parent="webscript"> parent="webscript">
@@ -1158,7 +1158,6 @@
parent="webscript"> parent="webscript">
<property name="publishingService" ref="publishingService" /> <property name="publishingService" ref="publishingService" />
<property name="channelService" ref="channelService" /> <property name="channelService" ref="channelService" />
<property name="defaultEnvironmentId" value="${publishing.default.environment}" />
</bean> </bean>
<!-- --> <!-- -->

View File

@@ -25,9 +25,8 @@ import java.util.Map;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.alfresco.repo.web.scripts.WebScriptUtil; import org.alfresco.repo.web.scripts.WebScriptUtil;
import org.alfresco.service.cmr.publishing.Environment;
import org.alfresco.service.cmr.publishing.PublishingEvent; import org.alfresco.service.cmr.publishing.PublishingEvent;
import org.alfresco.util.Pair; import org.alfresco.service.cmr.publishing.PublishingQueue;
import org.springframework.extensions.webscripts.Cache; import org.springframework.extensions.webscripts.Cache;
import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException; import org.springframework.extensions.webscripts.WebScriptException;
@@ -46,14 +45,13 @@ public class PUblishingEventsQueryPost extends PublishingEnvironmentWebScript
@Override @Override
protected Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache) protected Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache)
{ {
Pair<String, Environment> siteAndEnvironment = getSiteAndEnvironment(req); String siteId = getSiteId(req);
String siteId = siteAndEnvironment.getFirst(); PublishingQueue queue = getQueue(siteId);
Environment environment = siteAndEnvironment.getSecond();
String content = null; String content = null;
try try
{ {
content = WebScriptUtil.getContent(req); content = WebScriptUtil.getContent(req);
List<PublishingEvent> events = jsonParser.query(environment, content); List<PublishingEvent> events = jsonParser.query(queue, content);
List<Map<String, Object>> model = builder.buildPublishingEvents(events, channelService, siteId); List<Map<String, Object>> model = builder.buildPublishingEvents(events, channelService, siteId);
return WebScriptUtil.createBaseModel(model); return WebScriptUtil.createBaseModel(model);
} }

View File

@@ -25,10 +25,9 @@ import java.util.Map;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.alfresco.service.cmr.publishing.Environment; import org.alfresco.service.cmr.publishing.PublishingQueue;
import org.alfresco.service.cmr.publishing.PublishingService; import org.alfresco.service.cmr.publishing.PublishingService;
import org.alfresco.service.cmr.publishing.channels.ChannelService; import org.alfresco.service.cmr.publishing.channels.ChannelService;
import org.alfresco.util.Pair;
import org.springframework.extensions.webscripts.DeclarativeWebScript; import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.WebScriptException; import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest; import org.springframework.extensions.webscripts.WebScriptRequest;
@@ -45,9 +44,8 @@ public abstract class PublishingEnvironmentWebScript extends DeclarativeWebScrip
protected PublishingService publishingService; protected PublishingService publishingService;
protected ChannelService channelService; protected ChannelService channelService;
private String defaultEnvironmentId;
protected Pair<String, Environment> getSiteAndEnvironment(WebScriptRequest req) protected String getSiteId(WebScriptRequest req)
{ {
Map<String, String> params = req.getServiceMatch().getTemplateVars(); Map<String, String> params = req.getServiceMatch().getTemplateVars();
String siteId = params.get(SITE_ID); String siteId = params.get(SITE_ID);
@@ -57,26 +55,18 @@ public abstract class PublishingEnvironmentWebScript extends DeclarativeWebScrip
String msg = "A Site ID must be specified!"; String msg = "A Site ID must be specified!";
throw new WebScriptException(HttpServletResponse.SC_BAD_REQUEST, msg); throw new WebScriptException(HttpServletResponse.SC_BAD_REQUEST, msg);
} }
if (defaultEnvironmentId == null) return siteId;
{
String msg = "An Environment ID must be specified!";
throw new WebScriptException(HttpServletResponse.SC_BAD_REQUEST, msg);
}
Environment environment = publishingService.getEnvironment(siteId, defaultEnvironmentId);
if(environment == null)
{
String msg = "Environment " + defaultEnvironmentId + " does not exist in site " +siteId;
throw new WebScriptException(HttpServletResponse.SC_BAD_REQUEST, msg);
}
return new Pair<String, Environment>(siteId, environment);
} }
/** protected PublishingQueue getQueue(WebScriptRequest req)
* @param defaultEnvironmentId the defaultEnvironmentId to set
*/
public void setDefaultEnvironmentId(String defaultEnvironmentId)
{ {
this.defaultEnvironmentId = defaultEnvironmentId; String siteId = getSiteId(req);
return getQueue(siteId);
}
protected PublishingQueue getQueue(String siteId)
{
return publishingService.getPublishingQueue(siteId);
} }
/** /**

View File

@@ -39,7 +39,6 @@ import java.util.Collections;
import java.util.List; import java.util.List;
import org.alfresco.repo.node.NodeUtils; import org.alfresco.repo.node.NodeUtils;
import org.alfresco.service.cmr.publishing.Environment;
import org.alfresco.service.cmr.publishing.MutablePublishingPackage; import org.alfresco.service.cmr.publishing.MutablePublishingPackage;
import org.alfresco.service.cmr.publishing.PublishingEvent; import org.alfresco.service.cmr.publishing.PublishingEvent;
import org.alfresco.service.cmr.publishing.PublishingEventFilter; import org.alfresco.service.cmr.publishing.PublishingEventFilter;
@@ -71,20 +70,20 @@ public class PublishingJsonParser
return new JSONObject(); return new JSONObject();
} }
public List<PublishingEvent> query(Environment environment, String content) throws JSONException public List<PublishingEvent> query(PublishingQueue queue, String content) throws JSONException
{ {
JSONObject json = getJson(content); JSONObject json = getJson(content);
PublishingEventFilter filter = buildFilter(environment, json); PublishingEventFilter filter = buildFilter(queue, json);
return environment.getPublishingEvents(filter); return queue.getPublishingEvents(filter);
} }
private PublishingEventFilter buildFilter(Environment environment, JSONObject json) private PublishingEventFilter buildFilter(PublishingQueue queue, JSONObject json)
{ {
List<NodeRef> publishNodes = toNodes(json.optJSONArray(PUBLISH_NODES)); List<NodeRef> publishNodes = toNodes(json.optJSONArray(PUBLISH_NODES));
List<NodeRef> unpublishNodes = toNodes(json.optJSONArray(UNPUBLISH_NODES)); List<NodeRef> unpublishNodes = toNodes(json.optJSONArray(UNPUBLISH_NODES));
List<String> ids = JsonUtils.toListOfStrings(json.optJSONArray(IDS)); List<String> ids = JsonUtils.toListOfStrings(json.optJSONArray(IDS));
PublishingEventFilter filter = environment.createPublishingEventFilter() PublishingEventFilter filter = queue.createPublishingEventFilter()
.setIds(ids) .setIds(ids)
.setPublishedNodes(publishNodes) .setPublishedNodes(publishNodes)
.setUnpublishedNodes(unpublishNodes); .setUnpublishedNodes(unpublishNodes);

View File

@@ -24,10 +24,8 @@ import java.util.Map;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.alfresco.repo.web.scripts.WebScriptUtil; import org.alfresco.repo.web.scripts.WebScriptUtil;
import org.alfresco.service.cmr.publishing.Environment;
import org.alfresco.service.cmr.publishing.PublishingEvent; import org.alfresco.service.cmr.publishing.PublishingEvent;
import org.alfresco.service.cmr.publishing.PublishingQueue; import org.alfresco.service.cmr.publishing.PublishingQueue;
import org.alfresco.util.Pair;
import org.springframework.extensions.webscripts.Cache; import org.springframework.extensions.webscripts.Cache;
import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException; import org.springframework.extensions.webscripts.WebScriptException;
@@ -46,10 +44,8 @@ public class PublishingQueuePost extends PublishingEnvironmentWebScript
@Override @Override
protected Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache) protected Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache)
{ {
Pair<String, Environment> siteAndEnvironment = getSiteAndEnvironment(req); String siteId = getSiteId(req);
String siteId = siteAndEnvironment.getFirst(); PublishingQueue queue = getQueue(siteId);
Environment environment = siteAndEnvironment.getSecond();
PublishingQueue queue = environment.getPublishingQueue();
String content = null; String content = null;
try try

View File

@@ -79,6 +79,7 @@ import org.alfresco.repo.content.MimetypeMap;
import org.alfresco.repo.content.transform.AbstractContentTransformerTest; import org.alfresco.repo.content.transform.AbstractContentTransformerTest;
import org.alfresco.repo.publishing.ChannelHelper; import org.alfresco.repo.publishing.ChannelHelper;
import org.alfresco.repo.publishing.ChannelServiceImpl; import org.alfresco.repo.publishing.ChannelServiceImpl;
import org.alfresco.repo.publishing.EnvironmentImpl;
import org.alfresco.repo.publishing.PublishServiceImpl; import org.alfresco.repo.publishing.PublishServiceImpl;
import org.alfresco.repo.publishing.PublishingObjectFactory; import org.alfresco.repo.publishing.PublishingObjectFactory;
import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.repo.security.authentication.AuthenticationUtil;
@@ -86,7 +87,6 @@ import org.alfresco.repo.web.scripts.BaseWebScriptTest;
import org.alfresco.repo.web.scripts.WebScriptUtil; import org.alfresco.repo.web.scripts.WebScriptUtil;
import org.alfresco.service.ServiceRegistry; import org.alfresco.service.ServiceRegistry;
import org.alfresco.service.cmr.model.FileFolderService; import org.alfresco.service.cmr.model.FileFolderService;
import org.alfresco.service.cmr.publishing.Environment;
import org.alfresco.service.cmr.publishing.MutablePublishingPackage; import org.alfresco.service.cmr.publishing.MutablePublishingPackage;
import org.alfresco.service.cmr.publishing.NodeSnapshot; import org.alfresco.service.cmr.publishing.NodeSnapshot;
import org.alfresco.service.cmr.publishing.PublishingEvent; import org.alfresco.service.cmr.publishing.PublishingEvent;
@@ -125,7 +125,6 @@ import org.springframework.extensions.webscripts.TestWebScriptServer.Response;
*/ */
public class PublishingRestApiTest extends BaseWebScriptTest public class PublishingRestApiTest extends BaseWebScriptTest
{ {
private static final String environmentName = "live";
private static final String publishPdfType = "publishPdfForTest"; private static final String publishPdfType = "publishPdfForTest";
private static final String publishAnyType = "publishAnyForTest"; private static final String publishAnyType = "publishAnyForTest";
private static final String statusUpdateType = "statusUpdateForTest"; private static final String statusUpdateType = "statusUpdateForTest";
@@ -144,10 +143,11 @@ public class PublishingRestApiTest extends BaseWebScriptTest
private ChannelService channelService; private ChannelService channelService;
private PublishingService publishingService; private PublishingService publishingService;
private ChannelHelper channelHelper; private ChannelHelper channelHelper;
private PublishingQueue queue;
private Environment environment;
private NodeRef docLib; private NodeRef docLib;
private String siteId; private String siteId;
private EnvironmentImpl environment;
public void testGetChannelsForNode() throws Exception public void testGetChannelsForNode() throws Exception
{ {
@@ -261,8 +261,8 @@ public class PublishingRestApiTest extends BaseWebScriptTest
// Post JSON content. // Post JSON content.
sendRequest(new PostRequest(pubQueueUrl, jsonStr, JSON), 200); sendRequest(new PostRequest(pubQueueUrl, jsonStr, JSON), 200);
PublishingEventFilter filter = environment.createPublishingEventFilter(); PublishingEventFilter filter = queue.createPublishingEventFilter();
List<PublishingEvent> events = environment.getPublishingEvents(filter); List<PublishingEvent> events = queue.getPublishingEvents(filter);
assertEquals(1, events.size()); assertEquals(1, events.size());
PublishingEvent event = events.get(0); PublishingEvent event = events.get(0);
assertEquals(publishChannel.getName(), event.getChannelName()); assertEquals(publishChannel.getName(), event.getChannelName());
@@ -342,7 +342,6 @@ public class PublishingRestApiTest extends BaseWebScriptTest
assertEquals(0, data.length()); assertEquals(0, data.length());
// Create publishing event for textNode1. // Create publishing event for textNode1.
PublishingQueue queue = environment.getPublishingQueue();
MutablePublishingPackage pckg1 = queue.createPublishingPackage(); MutablePublishingPackage pckg1 = queue.createPublishingPackage();
pckg1.addNodesToPublish(textNode1); pckg1.addNodesToPublish(textNode1);
StatusUpdate statusUpdate = null; StatusUpdate statusUpdate = null;
@@ -742,15 +741,16 @@ public class PublishingRestApiTest extends BaseWebScriptTest
SiteVisibility.PUBLIC); SiteVisibility.PUBLIC);
this.docLib = siteService.createContainer(siteId, SiteService.DOCUMENT_LIBRARY, ContentModel.TYPE_FOLDER, null); this.docLib = siteService.createContainer(siteId, SiteService.DOCUMENT_LIBRARY, ContentModel.TYPE_FOLDER, null);
this.environment = factory.createEnvironmentObject(siteId, environmentName); this.environment = factory.createEnvironmentObject(siteId);
this.queue = environment.getPublishingQueue();
} }
@Override @Override
public void tearDown() throws Exception public void tearDown() throws Exception
{ {
//FInd all events //FInd all events
PublishingEventFilter filter = environment.createPublishingEventFilter(); PublishingEventFilter filter = queue.createPublishingEventFilter();
List<PublishingEvent> events = environment.getPublishingEvents(filter); List<PublishingEvent> events = queue.getPublishingEvents(filter);
for (PublishingEvent event : events) for (PublishingEvent event : events)
{ {
try try