Search in sources :

Example 1 with Tracking

use of org.motechproject.mds.domain.Tracking in project motech by motech.

the class EntityReader method readAuditingSettings.

private void readAuditingSettings() throws IOException {
    Tracking tracking = new Tracking();
    objectReader.expect("auditing");
    jsonReader.beginObject();
    readAuditingHistory(tracking);
    readAuditingCrudEvents(tracking);
    jsonReader.endObject();
    entity.setTracking(tracking);
}
Also used : Tracking(org.motechproject.mds.domain.Tracking)

Example 2 with Tracking

use of org.motechproject.mds.domain.Tracking in project motech by motech.

the class AllEntityDrafts method setProperties.

public void setProperties(EntityDraft draft, Entity entity, String username) {
    draft.setParentEntity(entity);
    draft.setParentVersion(entity.getEntityVersion());
    draft.setDraftOwnerUsername(username);
    draft.setLastModificationDate(DateUtil.nowUTC());
    draft.setName(entity.getName());
    draft.setClassName(entity.getClassName());
    draft.setNamespace(entity.getNamespace());
    draft.setModule(entity.getModule());
    draft.setSecurityMode(entity.getSecurityMode());
    draft.setSecurityMembers(new HashSet<>(entity.getSecurityMembers()));
    draft.setReadOnlySecurityMode(entity.getReadOnlySecurityMode());
    draft.setReadOnlySecurityMembers(new HashSet<>(entity.getReadOnlySecurityMembers()));
    draft.getFields().clear();
    for (Field field : entity.getFields()) {
        draft.addField(field.copy());
    }
    draft.getLookups().clear();
    for (Lookup lookup : entity.getLookups()) {
        Lookup newLookup = lookup.copy(draft.getFields());
        draft.addLookup(newLookup);
    }
    if (entity.getRestOptions() != null) {
        RestOptions restOptions = entity.getRestOptions().copy();
        restOptions.setEntity(draft);
        draft.setRestOptions(restOptions);
    }
    if (entity.getTracking() != null) {
        Tracking tracking = entity.getTracking().copy();
        tracking.setEntity(draft);
        draft.setTracking(tracking);
    }
}
Also used : Field(org.motechproject.mds.domain.Field) Tracking(org.motechproject.mds.domain.Tracking) Lookup(org.motechproject.mds.domain.Lookup) RestOptions(org.motechproject.mds.domain.RestOptions)

Example 3 with Tracking

use of org.motechproject.mds.domain.Tracking in project motech by motech.

the class AllEntityAudits method createAudit.

public EntityAudit createAudit(Entity entity, String username) {
    EntityAudit audit = new EntityAudit();
    audit.setOwnerUsername(username);
    audit.setModificationDate(DateUtil.nowUTC());
    audit.setVersion(entity.getEntityVersion());
    audit.setName(entity.getName());
    audit.setClassName(entity.getClassName());
    audit.setNamespace(entity.getNamespace());
    audit.setTableName(entity.getTableName());
    audit.setModule(entity.getModule());
    for (Field field : entity.getFields()) {
        Field tmp = field.copy();
        tmp.setId(null);
        audit.addField(tmp);
    }
    for (Lookup lookup : entity.getLookups()) {
        audit.addLookup(lookup.copy(entity.getFields()));
    }
    if (entity.getRestOptions() != null) {
        RestOptions restOptions = entity.getRestOptions().copy();
        restOptions.setEntity(audit);
        audit.setRestOptions(restOptions);
    }
    if (entity.getTracking() != null) {
        Tracking tracking = entity.getTracking().copy();
        tracking.setEntity(audit);
        audit.setTracking(tracking);
    }
    return create(audit);
}
Also used : EntityAudit(org.motechproject.mds.domain.EntityAudit) Field(org.motechproject.mds.domain.Field) Tracking(org.motechproject.mds.domain.Tracking) Lookup(org.motechproject.mds.domain.Lookup) RestOptions(org.motechproject.mds.domain.RestOptions)

Example 4 with Tracking

use of org.motechproject.mds.domain.Tracking in project motech by motech.

the class AllEntities method create.

public Entity create(EntityDto dto) {
    Entity entity = new Entity();
    entity.setClassName(dto.getClassName());
    entity.setName(dto.getName());
    entity.setModule(dto.getModule());
    entity.setBundleSymbolicName(dto.getBundleSymbolicName());
    entity.setNamespace(dto.getNamespace());
    entity.setTableName(dto.getTableName());
    entity.setMaxFetchDepth(dto.getMaxFetchDepth());
    entity.setSecurityMode(dto.getSecurityMode());
    entity.setSecurityMembers(dto.getSecurityMembers());
    entity.setReadOnlySecurityMode(dto.getReadOnlySecurityMode());
    entity.setReadOnlySecurityMembers(dto.getReadOnlySecurityMembers());
    entity.setSuperClass(dto.getSuperClass());
    entity.setAbstractClass(dto.isAbstractClass());
    Tracking tracking = new Tracking();
    tracking.setEntity(entity);
    tracking.setRecordHistory(dto.isRecordHistory());
    entity.setTracking(tracking);
    return create(entity);
}
Also used : Entity(org.motechproject.mds.domain.Entity) Tracking(org.motechproject.mds.domain.Tracking)

Aggregations

Tracking (org.motechproject.mds.domain.Tracking)4 Field (org.motechproject.mds.domain.Field)2 Lookup (org.motechproject.mds.domain.Lookup)2 RestOptions (org.motechproject.mds.domain.RestOptions)2 Entity (org.motechproject.mds.domain.Entity)1 EntityAudit (org.motechproject.mds.domain.EntityAudit)1