use of com.agiletec.plugins.jacms.aps.system.services.resource.model.ResourceInterface in project entando-core by entando.
the class TestResourceAction method testSaveEditedResource.
public void testSaveEditedResource() throws Throwable {
String resourceId = "44";
this.setUserOnSession("admin");
ResourceInterface resource = this._resourceManager.loadResource(resourceId);
try {
this.initAction("/do/jacms/Resource", "save");
this.addParameter("strutsAction", String.valueOf(ApsAdminSystemConstants.EDIT));
this.addParameter("descr", "Descrizione di test");
this.addParameter("mainGroup", resource.getMainGroup());
this.addParameter("resourceId", String.valueOf(resourceId));
this.addParameter("resourceTypeCode", resource.getType());
String result = this.executeAction();
assertEquals(Action.SUCCESS, result);
ResourceInterface modifiedResource = this._resourceManager.loadResource(resourceId);
assertEquals("Descrizione di test", modifiedResource.getDescription());
} catch (Throwable t) {
throw t;
} finally {
this._resourceManager.updateResource(resource);
}
}
use of com.agiletec.plugins.jacms.aps.system.services.resource.model.ResourceInterface in project entando-core by entando.
the class TestValidateResourceAttribute method testValidate_MonolistCompositeElement.
protected void testValidate_MonolistCompositeElement(String elementName, String testResourceId) throws Throwable {
try {
String contentOnSessionMarker = this.executeCreateNewContent();
Content content = this.getContentOnEdit(contentOnSessionMarker);
AttributeTracer tracerIT = this.getTracer();
MonoListAttribute monolistAttribute = (MonoListAttribute) content.getAttribute("MonoLCom");
CompositeAttribute compositeElement = (CompositeAttribute) monolistAttribute.addAttribute();
AttributeInterface attribute = compositeElement.getAttribute(elementName);
String monolistElementFieldPrefix = "Monolist:Composite:";
String formFieldPrefix = monolistElementFieldPrefix + attribute.getType() + ":";
tracerIT.setListIndex(monolistAttribute.getAttributes().size() - 1);
tracerIT.setListLang(this.getLangManager().getDefaultLang());
tracerIT.setMonoListElement(true);
tracerIT.setCompositeElement(true);
tracerIT.setParentAttribute(compositeElement);
String formITFieldName = tracerIT.getFormFieldName(attribute);
assertEquals(formFieldPrefix + "it_MonoLCom_" + elementName + "_0", formITFieldName);
String monolistElementName = tracerIT.getMonolistElementFieldName(compositeElement);
assertEquals(monolistElementFieldPrefix + "MonoLCom_0", monolistElementName);
this.initSaveContentAction(contentOnSessionMarker);
this.executeAction(Action.INPUT);
this.checkFieldErrors(1, monolistElementName);
this.initSaveContentAction(contentOnSessionMarker);
this.addParameter(formITFieldName, "itValue");
this.executeAction(Action.INPUT);
this.checkFieldErrors(1, formFieldPrefix + "MonoLCom_" + elementName + "_0");
content = this.getContentOnEdit(contentOnSessionMarker);
monolistAttribute = (MonoListAttribute) content.getAttribute("MonoLCom");
compositeElement = (CompositeAttribute) monolistAttribute.getAttribute(0);
AbstractResourceAttribute resourceAttribute = (AbstractResourceAttribute) compositeElement.getAttribute(elementName);
ResourceInterface resource = this._resourceManager.loadResource(testResourceId);
resourceAttribute.setResource(resource, this.getLangManager().getDefaultLang().getCode());
this.initSaveContentAction(contentOnSessionMarker);
this.executeAction(Action.INPUT);
this.checkFieldErrors(0, "MonoLCom_" + elementName + "_0");
} catch (Throwable t) {
this.deleteTestContent();
throw t;
}
}
use of com.agiletec.plugins.jacms.aps.system.services.resource.model.ResourceInterface in project entando-core by entando.
the class TestValidateResourceAttribute method testValidate_CompositeElement.
protected void testValidate_CompositeElement(String elementName, String testResourceId) throws Throwable {
try {
String contentOnSessionMarker = this.executeCreateNewContent();
Content content = this.getContentOnEdit(contentOnSessionMarker);
AttributeTracer tracerIT = this.getTracer();
CompositeAttribute compositeAttribute = (CompositeAttribute) content.getAttribute("Composite");
AttributeInterface attribute = compositeAttribute.getAttribute(elementName);
String formFieldPrefix = "Composite:" + attribute.getType() + ":";
tracerIT.setCompositeElement(true);
tracerIT.setParentAttribute(compositeAttribute);
String formITFieldName = tracerIT.getFormFieldName(attribute);
assertEquals(formFieldPrefix + "it_Composite_" + elementName, formITFieldName);
this.initSaveContentAction(contentOnSessionMarker);
this.executeAction(Action.INPUT);
this.checkFieldErrors(0, formITFieldName);
this.initSaveContentAction(contentOnSessionMarker);
this.addParameter(formITFieldName, "itValue");
this.executeAction(Action.INPUT);
this.checkFieldErrors(1, formFieldPrefix + "Composite_" + elementName);
content = this.getContentOnEdit(contentOnSessionMarker);
compositeAttribute = (CompositeAttribute) content.getAttribute("Composite");
AbstractResourceAttribute resourceAttribute = (AbstractResourceAttribute) compositeAttribute.getAttribute(elementName);
ResourceInterface resource = this._resourceManager.loadResource(testResourceId);
resourceAttribute.setResource(resource, this.getLangManager().getDefaultLang().getCode());
this.initSaveContentAction(contentOnSessionMarker);
this.executeAction(Action.INPUT);
this.checkFieldErrors(0, formFieldPrefix + "Composite_" + elementName);
} catch (Throwable t) {
this.deleteTestContent();
throw t;
}
}
use of com.agiletec.plugins.jacms.aps.system.services.resource.model.ResourceInterface in project entando-core by entando.
the class TestValidateResourceAttribute method testValidate_MonoListElement.
protected void testValidate_MonoListElement(String mlAttributeName) throws Throwable {
try {
String contentOnSessionMarker = this.executeCreateNewContent();
Content content = this.getContentOnEdit(contentOnSessionMarker);
AttributeTracer tracer = this.getTracer();
MonoListAttribute monolistAttribute = (MonoListAttribute) content.getAttribute(mlAttributeName);
AttributeInterface newResourceAttribute = monolistAttribute.addAttribute();
String monolistElementFieldPrefix = "Monolist:" + newResourceAttribute.getType() + ":";
tracer.setListIndex(monolistAttribute.getAttributes().size() - 1);
tracer.setListLang(this.getLangManager().getDefaultLang());
tracer.setMonoListElement(true);
tracer.setParentAttribute(monolistAttribute);
String monolistElementName = tracer.getMonolistElementFieldName(newResourceAttribute);
assertEquals(monolistElementFieldPrefix + mlAttributeName + "_0", monolistElementName);
String formFieldName = tracer.getFormFieldName(newResourceAttribute);
assertEquals(monolistElementFieldPrefix + "it_" + mlAttributeName + "_0", formFieldName);
this.initSaveContentAction(contentOnSessionMarker);
this.executeAction(Action.INPUT);
this.checkFieldErrors(1, monolistElementName);
this.initSaveContentAction(contentOnSessionMarker);
this.addParameter(formFieldName, "resourceDescrMonolElement0Value");
this.executeAction(Action.INPUT);
this.checkFieldErrors(1, monolistElementName);
content = this.getContentOnEdit(contentOnSessionMarker);
monolistAttribute = (MonoListAttribute) content.getAttribute(mlAttributeName);
AbstractResourceAttribute resourceAttribute = (AbstractResourceAttribute) monolistAttribute.getAttribute(0);
ResourceInterface resource = this._resourceManager.loadResource("7");
resourceAttribute.setResource(resource, this.getLangManager().getDefaultLang().getCode());
this.initSaveContentAction(contentOnSessionMarker);
this.executeAction(Action.INPUT);
this.checkFieldErrors(0, monolistElementName);
AttributeInterface attribute2 = monolistAttribute.addAttribute();
tracer.setListIndex(monolistAttribute.getAttributes().size() - 1);
String formFieldName2 = tracer.getFormFieldName(attribute2);
assertEquals(monolistElementFieldPrefix + "it_" + mlAttributeName + "_1", formFieldName2);
String monolistElementName2 = tracer.getMonolistElementFieldName(attribute2);
assertEquals(monolistElementFieldPrefix + mlAttributeName + "_1", monolistElementName2);
this.initSaveContentAction(contentOnSessionMarker);
this.executeAction(Action.INPUT);
this.checkFieldErrors(1, monolistElementName2);
} catch (Throwable t) {
this.deleteTestContent();
throw t;
}
}
use of com.agiletec.plugins.jacms.aps.system.services.resource.model.ResourceInterface in project entando-core by entando.
the class ResourceAction method edit.
/**
* Executes the specific action to modify an existing resource.
*
* @return The result code.
*/
public String edit() {
try {
ResourceInterface resource = this.loadResource(this.getResourceId());
this.setResourceTypeCode(resource.getType());
this.setDescr(resource.getDescription());
List<Category> resCategories = resource.getCategories();
for (int i = 0; i < resCategories.size(); i++) {
Category resCat = resCategories.get(i);
this.getCategoryCodes().add(resCat.getCode());
}
this.setMainGroup(resource.getMainGroup());
this.setStrutsAction(ApsAdminSystemConstants.EDIT);
} catch (Throwable t) {
_logger.error("error in edit", t);
return FAILURE;
}
return SUCCESS;
}
Aggregations