use of org.motechproject.mds.domain.Entity in project motech by motech.
the class EntityValidator method validateEntityComboboxFieldsSelectionTypesChanges.
private void validateEntityComboboxFieldsSelectionTypesChanges(EntityDraft draft) {
Entity parent = draft.getParentEntity();
Map<String, Boolean> changedFields = ComboboxHelper.comboboxesWithChangedSelectionType(parent.getComboboxFields(), draft.getComboboxFields());
for (Map.Entry<String, Boolean> field : changedFields.entrySet()) {
validateField(parent, field);
}
}
use of org.motechproject.mds.domain.Entity in project motech by motech.
the class ActionHandlerServiceImpl method create.
@Override
public void create(Map<String, Object> parameters) throws ActionHandlerException {
LOGGER.debug("Action CREATE: params: {}", parameters);
String entityClassName = getEntityClassName(parameters);
MotechDataService dataService = getEntityDataService(entityClassName);
Entity entity = getEntity(entityClassName);
Object instance = createEntityInstance(dataService);
setInstanceProperties(instance, entity.getFields(), parameters);
dataService.create(instance);
}
use of org.motechproject.mds.domain.Entity in project motech by motech.
the class ActionHandlerServiceImpl method createOrUpdate.
@Override
public void createOrUpdate(Map<String, Object> parameters) throws ActionHandlerException {
LOGGER.debug("Action CREATE OR UPDATE: params {}", parameters);
String entityClassName = getEntityClassName(parameters);
MotechDataService dataService = getEntityDataService(entityClassName);
Entity entity = getEntity(entityClassName);
Long instanceId = getInstanceId(parameters, false);
Object instance = createEntityInstance(dataService);
PropertyUtil.safeSetProperty(instance, Constants.Util.ID_FIELD_NAME, instanceId);
setInstanceProperties(instance, entity.getFields(), parameters);
dataService.createOrUpdate(instance);
}
use of org.motechproject.mds.domain.Entity in project motech by motech.
the class ActionHandlerServiceImpl method update.
@Override
public void update(Map<String, Object> parameters) throws ActionHandlerException {
LOGGER.debug("Action UPDATE: params: {}", parameters);
String entityClassName = getEntityClassName(parameters);
MotechDataService dataService = getEntityDataService(entityClassName);
Entity entity = getEntity(entityClassName);
Long instanceId = getInstanceId(parameters, true);
Object instance = retrieveEntityInstance(dataService, instanceId);
setInstanceProperties(instance, entity.getFields(), parameters);
dataService.update(instance);
}
use of org.motechproject.mds.domain.Entity in project motech by motech.
the class AllEntityDraftsContextIT method shouldCreateAndDeleteDrafts.
@Test
public void shouldCreateAndDeleteDrafts() {
EntityDto dto = new EntityDto();
dto.setClassName("DraftCls");
Entity entity = allEntities.create(dto);
allEntityDrafts.create(entity, USERNAME);
allEntityDrafts.create(entity, USERNAME_2);
EntityDraft draft = allEntityDrafts.retrieve(entity, USERNAME);
assertNotNull(draft);
assertEquals("DraftCls", draft.getClassName());
assertEquals(USERNAME, draft.getDraftOwnerUsername());
draft = allEntityDrafts.retrieve(entity, USERNAME_2);
assertNotNull(draft);
assertEquals("DraftCls", draft.getClassName());
assertEquals(USERNAME_2, draft.getDraftOwnerUsername());
assertNull(allEntityDrafts.retrieve(entity, "otherUser"));
allEntityDrafts.deleteAll(entity);
assertTrue(allEntityDrafts.retrieveAll(entity).isEmpty());
assertNull(allEntityDrafts.retrieve(entity, USERNAME));
assertNull(allEntityDrafts.retrieve(entity, USERNAME_2));
}
Aggregations