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

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

View File

@@ -25,10 +25,9 @@ import java.util.Map;
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.channels.ChannelService;
import org.alfresco.util.Pair;
import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest;
@@ -45,9 +44,8 @@ public abstract class PublishingEnvironmentWebScript extends DeclarativeWebScrip
protected PublishingService publishingService;
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();
String siteId = params.get(SITE_ID);
@@ -57,26 +55,18 @@ public abstract class PublishingEnvironmentWebScript extends DeclarativeWebScrip
String msg = "A Site ID must be specified!";
throw new WebScriptException(HttpServletResponse.SC_BAD_REQUEST, msg);
}
if (defaultEnvironmentId == null)
{
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);
return siteId;
}
/**
* @param defaultEnvironmentId the defaultEnvironmentId to set
*/
public void setDefaultEnvironmentId(String defaultEnvironmentId)
protected PublishingQueue getQueue(WebScriptRequest req)
{
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 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.PublishingEvent;
import org.alfresco.service.cmr.publishing.PublishingEventFilter;
@@ -71,20 +70,20 @@ public class PublishingJsonParser
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);
PublishingEventFilter filter = buildFilter(environment, json);
return environment.getPublishingEvents(filter);
PublishingEventFilter filter = buildFilter(queue, json);
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> unpublishNodes = toNodes(json.optJSONArray(UNPUBLISH_NODES));
List<String> ids = JsonUtils.toListOfStrings(json.optJSONArray(IDS));
PublishingEventFilter filter = environment.createPublishingEventFilter()
PublishingEventFilter filter = queue.createPublishingEventFilter()
.setIds(ids)
.setPublishedNodes(publishNodes)
.setUnpublishedNodes(unpublishNodes);

View File

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

View File

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