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

Popular Posts