RemoveCatalogVersionCronJob
INSERT_UPDATE RemoveCatalogVersionCronJob ; code[unique=true] ; job(code)[default = RemoveCatalogVersionJob] ; singleExecutable ; catalog(id) ; catalogVersion(catalog(id),version) ; sessionLanguage(isoCode)[default = en]
; msagmContentCatalog_Staged-removeCatalogVersionJob ; ; false ; msagmContentCatalog ; msagmContentCatalog:Staged
; msagmContentCatalog_Online-removeCatalogVersionJob ; ; false ; msagmContentCatalog ; msagmContentCatalog:Online
REMOVE RecentlyViewedProductCMSComponent[batchmode=true] ; itemtype(code)[unique=true] ; $contentCV[unique=true] ;
; RecentlyViewedProductCMSComponent ;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
import de.hybris.platform.cms2.model.contents.CMSItemModel;
import de.hybris.platform.servicelayer.interceptor.impl.InterceptorExecutionPolicy;
import de.hybris.platform.servicelayer.search.FlexibleSearchQuery;
import de.hybris.platform.servicelayer.search.SearchResult;
import java.util.Map;
import de.hybris.platform.servicelayer.session.SessionExecutionBody;
final Map<String, Object> params = ImmutableMap.of(InterceptorExecutionPolicy.DISABLED_INTERCEPTOR_TYPES,
ImmutableSet.of(InterceptorExecutionPolicy.InterceptorType.REMOVE));
sessionService.executeInLocalViewWithParams(params, new SessionExecutionBody() {
@Override
public void executeWithoutResult() {
String query = "SELECT {c.pk} FROM {CMSItem AS c " +
"JOIN CatalogVersion AS cv ON {c.catalogVersion}={cv.pk} " +
"JOIN Catalog AS ca on {cv.catalog}={ca.pk} " +
"} WHERE {cv.version} = 'Staged' and {ca.id} IN ('msagmContentCatalog')";
System.out.println(" query : " + query);
//SELECT {c.pk} FROM {CMSItem AS c JOIN CatalogVersion AS cv ON {c.catalogVersion}={cv.pk} JOIN Catalog AS ca on {cv.catalog}={ca.pk} } WHERE {cv.version} = 'Staged' and {ca.id} IN ('msagmContentCatalog')
FlexibleSearchQuery flexibleSearchQuery = new FlexibleSearchQuery(query);
flexibleSearchQuery.setCount(10);
SearchResult<CMSItemModel> searchResult= flexibleSearchService.search(flexibleSearchQuery);
for(CMSItemModel item : searchResult.getResult()) {
System.out.println(" item "+item);
if (item != null && !modelService.isRemoved(item)) {
System.out.println("removing " + item.getPk());
modelService.remove(item);
System.out.println("removed " + item.PK);
}
}
}
});
Comments
Post a Comment