/** * This code was auto-generated by a Codezu. * * Changes to this file may cause incorrect behavior and will be lost if * the code is regenerated. */ package com.mozu.api.resources.commerce.catalog.admin; import com.mozu.api.ApiContext; import java.util.List; import java.util.ArrayList; import com.mozu.api.MozuClient; import com.mozu.api.MozuClientFactory; import com.mozu.api.MozuUrl; import com.mozu.api.Headers; import org.joda.time.DateTime; import com.mozu.api.AsyncCallback; import java.util.concurrent.CountDownLatch; import com.mozu.api.security.AuthTicket; import org.apache.commons.lang.StringUtils; import com.mozu.api.DataViewMode; /** <summary> * Use the Product Publishing resource to publish or discard pending changes to product definitions in the master catalog. * </summary> */ public class PublishingScopeResource { /// /// <see cref="Mozu.Api.ApiContext"/> /// private ApiContext _apiContext; private DataViewMode _dataViewMode; public PublishingScopeResource(ApiContext apiContext) { _apiContext = apiContext; _dataViewMode = DataViewMode.Live; } public PublishingScopeResource(ApiContext apiContext, DataViewMode dataViewMode) { _apiContext = apiContext; _dataViewMode = dataViewMode; } /** * Retrieves the details of a single PublishSet. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * PublishSet publishSet = publishingscope.getPublishSet( publishSetCode); * </code></pre></p> * @param publishSetCode The unique identifier of the publish set. * @param dataViewMode DataViewMode * @return com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet */ public com.mozu.api.contracts.productadmin.PublishSet getPublishSet(String publishSetCode) throws Exception { return getPublishSet( publishSetCode, null); } /** * Retrieves the details of a single PublishSet. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * CountDownLatch latch = publishingscope.getPublishSet( publishSetCode, callback ); * latch.await() * </code></pre></p> * @param publishSetCode The unique identifier of the publish set. * @param callback callback handler for asynchronous operations * @param dataViewMode DataViewMode * @return com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet */ public CountDownLatch getPublishSetAsync(String publishSetCode, AsyncCallback<com.mozu.api.contracts.productadmin.PublishSet> callback) throws Exception { return getPublishSetAsync( publishSetCode, null, callback); } /** * Retrieves the details of a single PublishSet. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * PublishSet publishSet = publishingscope.getPublishSet( publishSetCode, responseFields); * </code></pre></p> * @param publishSetCode The unique identifier of the publish set. * @param responseFields Filtering syntax appended to an API call to increase or decrease the amount of data returned inside a JSON object. This parameter should only be used to retrieve data. Attempting to update data using this parameter may cause data loss. * @param dataViewMode DataViewMode * @return com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet */ public com.mozu.api.contracts.productadmin.PublishSet getPublishSet(String publishSetCode, String responseFields) throws Exception { MozuClient<com.mozu.api.contracts.productadmin.PublishSet> client = com.mozu.api.clients.commerce.catalog.admin.PublishingScopeClient.getPublishSetClient( publishSetCode, responseFields); client.setContext(_apiContext); client.executeRequest(); return client.getResult(); } /** * Retrieves the details of a single PublishSet. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * CountDownLatch latch = publishingscope.getPublishSet( publishSetCode, responseFields, callback ); * latch.await() * </code></pre></p> * @param publishSetCode The unique identifier of the publish set. * @param responseFields Filtering syntax appended to an API call to increase or decrease the amount of data returned inside a JSON object. This parameter should only be used to retrieve data. Attempting to update data using this parameter may cause data loss. * @param callback callback handler for asynchronous operations * @param dataViewMode DataViewMode * @return com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet */ public CountDownLatch getPublishSetAsync(String publishSetCode, String responseFields, AsyncCallback<com.mozu.api.contracts.productadmin.PublishSet> callback) throws Exception { MozuClient<com.mozu.api.contracts.productadmin.PublishSet> client = com.mozu.api.clients.commerce.catalog.admin.PublishingScopeClient.getPublishSetClient( publishSetCode, responseFields); client.setContext(_apiContext); return client.executeRequest(callback); } /** * Retrieves a list of PublishSets including the product counts. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * PublishSetCollection publishSetCollection = publishingscope.getPublishSets(); * </code></pre></p> * @param dataViewMode DataViewMode * @return com.mozu.api.contracts.productadmin.PublishSetCollection * @see com.mozu.api.contracts.productadmin.PublishSetCollection */ public com.mozu.api.contracts.productadmin.PublishSetCollection getPublishSets() throws Exception { return getPublishSets( null); } /** * Retrieves a list of PublishSets including the product counts. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * CountDownLatch latch = publishingscope.getPublishSets( callback ); * latch.await() * </code></pre></p> * @param callback callback handler for asynchronous operations * @param dataViewMode DataViewMode * @return com.mozu.api.contracts.productadmin.PublishSetCollection * @see com.mozu.api.contracts.productadmin.PublishSetCollection */ public CountDownLatch getPublishSetsAsync( AsyncCallback<com.mozu.api.contracts.productadmin.PublishSetCollection> callback) throws Exception { return getPublishSetsAsync( null, callback); } /** * Retrieves a list of PublishSets including the product counts. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * PublishSetCollection publishSetCollection = publishingscope.getPublishSets( responseFields); * </code></pre></p> * @param responseFields Filtering syntax appended to an API call to increase or decrease the amount of data returned inside a JSON object. This parameter should only be used to retrieve data. Attempting to update data using this parameter may cause data loss. * @param dataViewMode DataViewMode * @return com.mozu.api.contracts.productadmin.PublishSetCollection * @see com.mozu.api.contracts.productadmin.PublishSetCollection */ public com.mozu.api.contracts.productadmin.PublishSetCollection getPublishSets(String responseFields) throws Exception { MozuClient<com.mozu.api.contracts.productadmin.PublishSetCollection> client = com.mozu.api.clients.commerce.catalog.admin.PublishingScopeClient.getPublishSetsClient( responseFields); client.setContext(_apiContext); client.executeRequest(); return client.getResult(); } /** * Retrieves a list of PublishSets including the product counts. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * CountDownLatch latch = publishingscope.getPublishSets( responseFields, callback ); * latch.await() * </code></pre></p> * @param responseFields Filtering syntax appended to an API call to increase or decrease the amount of data returned inside a JSON object. This parameter should only be used to retrieve data. Attempting to update data using this parameter may cause data loss. * @param callback callback handler for asynchronous operations * @param dataViewMode DataViewMode * @return com.mozu.api.contracts.productadmin.PublishSetCollection * @see com.mozu.api.contracts.productadmin.PublishSetCollection */ public CountDownLatch getPublishSetsAsync(String responseFields, AsyncCallback<com.mozu.api.contracts.productadmin.PublishSetCollection> callback) throws Exception { MozuClient<com.mozu.api.contracts.productadmin.PublishSetCollection> client = com.mozu.api.clients.commerce.catalog.admin.PublishingScopeClient.getPublishSetsClient( responseFields); client.setContext(_apiContext); return client.executeRequest(callback); } /** * Deletes the draft version of product changes for each product code specified in the request. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * publishingscope.discardDrafts( publishScope); * </code></pre></p> * @param dataViewMode DataViewMode * @param publishScope Describes the scope of the product publishing update, which can include individual product codes or all pending changes. * @return * @see com.mozu.api.contracts.productadmin.PublishingScope */ public void discardDrafts(com.mozu.api.contracts.productadmin.PublishingScope publishScope) throws Exception { MozuClient client = com.mozu.api.clients.commerce.catalog.admin.PublishingScopeClient.discardDraftsClient(_dataViewMode, publishScope); client.setContext(_apiContext); client.executeRequest(); client.cleanupHttpConnection(); } /** * Publishes the draft version of product changes for each product code specified in the request, and changes the product publish state to "live". * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * publishingscope.publishDrafts( publishScope); * </code></pre></p> * @param dataViewMode DataViewMode * @param publishScope Describes the scope of the product publishing update, which can include individual product codes or all pending changes. * @return * @see com.mozu.api.contracts.productadmin.PublishingScope */ public void publishDrafts(com.mozu.api.contracts.productadmin.PublishingScope publishScope) throws Exception { MozuClient client = com.mozu.api.clients.commerce.catalog.admin.PublishingScopeClient.publishDraftsClient(_dataViewMode, publishScope); client.setContext(_apiContext); client.executeRequest(); client.cleanupHttpConnection(); } /** * Assigns a product draft to a specified publish set. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * PublishSet publishSet = publishingscope.assignProductsToPublishSet( publishSet); * </code></pre></p> * @param dataViewMode DataViewMode * @param publishSet Mozu.ProductAdmin.Contracts.PublishSet ApiType DOCUMENT_HERE * @return com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet */ public com.mozu.api.contracts.productadmin.PublishSet assignProductsToPublishSet(com.mozu.api.contracts.productadmin.PublishSet publishSet) throws Exception { return assignProductsToPublishSet( publishSet, null); } /** * Assigns a product draft to a specified publish set. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * CountDownLatch latch = publishingscope.assignProductsToPublishSet( publishSet, callback ); * latch.await() * </code></pre></p> * @param callback callback handler for asynchronous operations * @param dataViewMode DataViewMode * @param publishSet Mozu.ProductAdmin.Contracts.PublishSet ApiType DOCUMENT_HERE * @return com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet */ public CountDownLatch assignProductsToPublishSetAsync(com.mozu.api.contracts.productadmin.PublishSet publishSet, AsyncCallback<com.mozu.api.contracts.productadmin.PublishSet> callback) throws Exception { return assignProductsToPublishSetAsync( publishSet, null, callback); } /** * Assigns a product draft to a specified publish set. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * PublishSet publishSet = publishingscope.assignProductsToPublishSet( publishSet, responseFields); * </code></pre></p> * @param responseFields Filtering syntax appended to an API call to increase or decrease the amount of data returned inside a JSON object. This parameter should only be used to retrieve data. Attempting to update data using this parameter may cause data loss. * @param dataViewMode DataViewMode * @param publishSet Mozu.ProductAdmin.Contracts.PublishSet ApiType DOCUMENT_HERE * @return com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet */ public com.mozu.api.contracts.productadmin.PublishSet assignProductsToPublishSet(com.mozu.api.contracts.productadmin.PublishSet publishSet, String responseFields) throws Exception { MozuClient<com.mozu.api.contracts.productadmin.PublishSet> client = com.mozu.api.clients.commerce.catalog.admin.PublishingScopeClient.assignProductsToPublishSetClient( publishSet, responseFields); client.setContext(_apiContext); client.executeRequest(); return client.getResult(); } /** * Assigns a product draft to a specified publish set. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * CountDownLatch latch = publishingscope.assignProductsToPublishSet( publishSet, responseFields, callback ); * latch.await() * </code></pre></p> * @param responseFields Filtering syntax appended to an API call to increase or decrease the amount of data returned inside a JSON object. This parameter should only be used to retrieve data. Attempting to update data using this parameter may cause data loss. * @param callback callback handler for asynchronous operations * @param dataViewMode DataViewMode * @param publishSet Mozu.ProductAdmin.Contracts.PublishSet ApiType DOCUMENT_HERE * @return com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet * @see com.mozu.api.contracts.productadmin.PublishSet */ public CountDownLatch assignProductsToPublishSetAsync(com.mozu.api.contracts.productadmin.PublishSet publishSet, String responseFields, AsyncCallback<com.mozu.api.contracts.productadmin.PublishSet> callback) throws Exception { MozuClient<com.mozu.api.contracts.productadmin.PublishSet> client = com.mozu.api.clients.commerce.catalog.admin.PublishingScopeClient.assignProductsToPublishSetClient( publishSet, responseFields); client.setContext(_apiContext); return client.executeRequest(callback); } /** * Removes all details about a PublishSet from the product service. If the discardDrafts param is true, it also deletes the product drafts. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * publishingscope.deletePublishSet( publishSetCode); * </code></pre></p> * @param publishSetCode The unique identifier of the publish set. * @param dataViewMode DataViewMode * @return */ public void deletePublishSet(String publishSetCode) throws Exception { deletePublishSet( publishSetCode, null); } /** * Removes all details about a PublishSet from the product service. If the discardDrafts param is true, it also deletes the product drafts. * <p><pre><code> * PublishingScope publishingscope = new PublishingScope(); * publishingscope.deletePublishSet( publishSetCode, discardDrafts); * </code></pre></p> * @param discardDrafts Specifies whether to discard all the drafts assigned to the publish set when the publish set is deleted. * @param publishSetCode The unique identifier of the publish set. * @param dataViewMode DataViewMode * @return */ public void deletePublishSet(String publishSetCode, Boolean discardDrafts) throws Exception { MozuClient client = com.mozu.api.clients.commerce.catalog.admin.PublishingScopeClient.deletePublishSetClient( publishSetCode, discardDrafts); client.setContext(_apiContext); client.executeRequest(); client.cleanupHttpConnection(); } }