Search in sources :

Example 1 with AttributeGroup

use of org.activityinfo.server.database.hibernate.entity.AttributeGroup in project activityinfo by bedatadriven.

the class UpdateEntityHandler method updateAttributeGroup.

private void updateAttributeGroup(UpdateEntity cmd, Map<String, Object> changes) {
    AttributeGroup group = entityManager().find(AttributeGroup.class, cmd.getId());
    updateAttributeGroupProperties(group, changes);
    // Assume
    Activity activity = group.getActivities().iterator().next();
    // only one
    // activity
    // for the
    // attr
    // group
    activity.getDatabase().setLastSchemaUpdate(new Date());
}
Also used : AttributeGroup(org.activityinfo.server.database.hibernate.entity.AttributeGroup) Activity(org.activityinfo.server.database.hibernate.entity.Activity) Date(java.util.Date)

Example 2 with AttributeGroup

use of org.activityinfo.server.database.hibernate.entity.AttributeGroup in project activityinfo by bedatadriven.

the class SchemaUpdateBuilder method createAndSyncAttributeGroupInActivity.

private void createAndSyncAttributeGroupInActivity(JpaUpdateBuilder builder) throws JSONException {
    builder.executeStatement("create table if not exists AttributeGroupInActivity (ActivityId integer, AttributeGroupId integer)");
    builder.executeStatement("delete from AttributeGroupInActivity");
    if (anyAttributes()) {
        builder.beginPreparedStatement("insert into AttributeGroupInActivity (ActivityId, AttributeGroupId) values (?,?)");
        for (UserDatabase db : databases) {
            for (Activity activity : db.getActivities()) {
                for (AttributeGroup group : activity.getAttributeGroups()) {
                    builder.addExecution(activity.getId(), group.getId());
                }
            }
        }
        builder.finishPreparedStatement();
    }
}
Also used : UserDatabase(org.activityinfo.server.database.hibernate.entity.UserDatabase) AttributeGroup(org.activityinfo.server.database.hibernate.entity.AttributeGroup) Activity(org.activityinfo.server.database.hibernate.entity.Activity)

Example 3 with AttributeGroup

use of org.activityinfo.server.database.hibernate.entity.AttributeGroup in project activityinfo by bedatadriven.

the class CreateEntityHandler method createAttributeGroup.

private CommandResult createAttributeGroup(CreateEntity cmd, Map<String, Object> properties) {
    AttributeGroup group = new AttributeGroup();
    updateAttributeGroupProperties(group, properties);
    entityManager().persist(group);
    Activity activity = entityManager().find(Activity.class, properties.get("activityId"));
    activity.getAttributeGroups().add(group);
    activity.getDatabase().setLastSchemaUpdate(new Date());
    return new CreateResult(group.getId());
}
Also used : CreateResult(org.activityinfo.shared.command.result.CreateResult) AttributeGroup(org.activityinfo.server.database.hibernate.entity.AttributeGroup) Activity(org.activityinfo.server.database.hibernate.entity.Activity) Date(java.util.Date)

Example 4 with AttributeGroup

use of org.activityinfo.server.database.hibernate.entity.AttributeGroup in project activityinfo by bedatadriven.

the class CreateEntityHandler method createAttribute.

private CommandResult createAttribute(CreateEntity cmd, Map<String, Object> properties) {
    Attribute attribute = new Attribute();
    AttributeGroup ag = entityManager().getReference(AttributeGroup.class, properties.get("attributeGroupId"));
    attribute.setGroup(ag);
    updateAttributeProperties(properties, attribute);
    // Assume
    Activity activity = ag.getActivities().iterator().next();
    // group has
    // only one
    // activity
    entityManager().persist(attribute);
    activity.getDatabase().setLastSchemaUpdate(new Date());
    return new CreateResult(attribute.getId());
}
Also used : CreateResult(org.activityinfo.shared.command.result.CreateResult) Attribute(org.activityinfo.server.database.hibernate.entity.Attribute) AttributeGroup(org.activityinfo.server.database.hibernate.entity.AttributeGroup) Activity(org.activityinfo.server.database.hibernate.entity.Activity) Date(java.util.Date)

Example 5 with AttributeGroup

use of org.activityinfo.server.database.hibernate.entity.AttributeGroup in project activityinfo by bedatadriven.

the class UpdateEntityHandler method updateAttribute.

private void updateAttribute(User user, UpdateEntity cmd, Map<String, Object> changes) {
    Attribute attribute = entityManager().find(Attribute.class, cmd.getId());
    // TODO: decide where attributes belong and how to manage them
    // assertDesignPriviledges(user, attribute.get);
    updateAttributeProperties(changes, attribute);
    AttributeGroup ag = entityManager().find(AttributeGroup.class, attribute.getGroup().getId());
    // Assume only
    Activity activity = ag.getActivities().iterator().next();
    // one
    // activity
    // for the
    // attr group
    activity.getDatabase().setLastSchemaUpdate(new Date());
}
Also used : Attribute(org.activityinfo.server.database.hibernate.entity.Attribute) AttributeGroup(org.activityinfo.server.database.hibernate.entity.AttributeGroup) Activity(org.activityinfo.server.database.hibernate.entity.Activity) Date(java.util.Date)

Aggregations

Activity (org.activityinfo.server.database.hibernate.entity.Activity)6 AttributeGroup (org.activityinfo.server.database.hibernate.entity.AttributeGroup)6 Date (java.util.Date)4 Attribute (org.activityinfo.server.database.hibernate.entity.Attribute)3 UserDatabase (org.activityinfo.server.database.hibernate.entity.UserDatabase)2 CreateResult (org.activityinfo.shared.command.result.CreateResult)2 Indicator (org.activityinfo.server.database.hibernate.entity.Indicator)1 IndicatorLinkEntity (org.activityinfo.server.database.hibernate.entity.IndicatorLinkEntity)1 LocationType (org.activityinfo.server.database.hibernate.entity.LocationType)1 Partner (org.activityinfo.server.database.hibernate.entity.Partner)1 Project (org.activityinfo.server.database.hibernate.entity.Project)1 User (org.activityinfo.server.database.hibernate.entity.User)1