From 44dca50bc9730bed2da67889ef035c685623c1d3 Mon Sep 17 00:00:00 2001 From: Manuel Rego Casasnovas Date: Wed, 30 Jan 2013 10:30:31 +0100 Subject: [PATCH] jira-integration: Add new field jiraConnectorTypeOfWorkHours in JiraConfiguration * The new field is added in JiraConfiguration similar to field Configuration.personalTimesheetsTypeOfWorkHours. * Added required bits for Hibernate mapping and Liquibase database changes. * Modified Jira connector configuration UI to include the new field. FEA: ItEr77S16JiraAndTimConnectorContributionIntegration --- .../common/entities/JiraConfiguration.java | 10 ++++++++ .../src/main/resources/db.changelog-1.3.xml | 17 +++++++++++++ .../common/entities/Configuration.hbm.xml | 3 +++ .../web/common/ConfigurationController.java | 8 +++++++ .../web/common/ConfigurationModel.java | 24 +++++++++++++++++++ .../web/common/IConfigurationModel.java | 4 ++++ .../src/main/webapp/common/configuration.zul | 6 +++++ 7 files changed, 72 insertions(+) diff --git a/libreplan-business/src/main/java/org/libreplan/business/common/entities/JiraConfiguration.java b/libreplan-business/src/main/java/org/libreplan/business/common/entities/JiraConfiguration.java index 6de1013c8..b84c3a668 100755 --- a/libreplan-business/src/main/java/org/libreplan/business/common/entities/JiraConfiguration.java +++ b/libreplan-business/src/main/java/org/libreplan/business/common/entities/JiraConfiguration.java @@ -20,6 +20,7 @@ package org.libreplan.business.common.entities; import org.libreplan.business.common.BaseEntity; +import org.libreplan.business.costcategories.entities.TypeOfWorkHours; public class JiraConfiguration extends BaseEntity { @@ -42,6 +43,8 @@ public class JiraConfiguration extends BaseEntity { private String jiraPassword; + private TypeOfWorkHours jiraConnectorTypeOfWorkHours; + /** * Constructor for Hibernate. Do not use! */ @@ -88,5 +91,12 @@ public class JiraConfiguration extends BaseEntity { this.jiraPassword = jiraPassword; } + public TypeOfWorkHours getJiraConnectorTypeOfWorkHours() { + return jiraConnectorTypeOfWorkHours; + } + + public void setJiraConnectorTypeOfWorkHours(TypeOfWorkHours typeOfWorkHours) { + jiraConnectorTypeOfWorkHours = typeOfWorkHours; + } } diff --git a/libreplan-business/src/main/resources/db.changelog-1.3.xml b/libreplan-business/src/main/resources/db.changelog-1.3.xml index 2187a51c2..29ccfdc4c 100644 --- a/libreplan-business/src/main/resources/db.changelog-1.3.xml +++ b/libreplan-business/src/main/resources/db.changelog-1.3.xml @@ -269,4 +269,21 @@ + + + Add new column jira_connector_type_of_work_hours to configuration + table. + + + + + + + diff --git a/libreplan-business/src/main/resources/org/libreplan/business/common/entities/Configuration.hbm.xml b/libreplan-business/src/main/resources/org/libreplan/business/common/entities/Configuration.hbm.xml index 859bc669d..b5887862e 100644 --- a/libreplan-business/src/main/resources/org/libreplan/business/common/entities/Configuration.hbm.xml +++ b/libreplan-business/src/main/resources/org/libreplan/business/common/entities/Configuration.hbm.xml @@ -128,7 +128,10 @@ + + diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/common/ConfigurationController.java b/libreplan-webapp/src/main/java/org/libreplan/web/common/ConfigurationController.java index 66277db5b..b8b9310af 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/common/ConfigurationController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/common/ConfigurationController.java @@ -965,4 +965,12 @@ public class ConfigurationController extends GenericForwardComposer { configurationModel.setSecondsPlanningWarning(secondsPlanningWarning); } + public TypeOfWorkHours getJiraConnectorTypeOfWorkHours() { + return configurationModel.getJiraConnectorTypeOfWorkHours(); + } + + public void setJiraConnectorTypeOfWorkHours(TypeOfWorkHours typeOfWorkHours) { + configurationModel.setJiraConnectorTypeOfWorkHours(typeOfWorkHours); + } + } diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/common/ConfigurationModel.java b/libreplan-webapp/src/main/java/org/libreplan/web/common/ConfigurationModel.java index 8aa9a02eb..d2af8bac8 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/common/ConfigurationModel.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/common/ConfigurationModel.java @@ -146,6 +146,8 @@ public class ConfigurationModel implements IConfigurationModel { private void forceLoad(Configuration configuration) { forceLoad(configuration.getDefaultCalendar()); forceLoad(configuration.getPersonalTimesheetsTypeOfWorkHours()); + forceLoad(configuration.getJiraConfiguration() + .getJiraConnectorTypeOfWorkHours()); } private void forceLoad(BaseCalendar calendar) { @@ -685,4 +687,26 @@ public class ConfigurationModel implements IConfigurationModel { return configuration.getJiraConfiguration(); } + @Override + public TypeOfWorkHours getJiraConnectorTypeOfWorkHours() { + JiraConfiguration jiraConfiguration = configuration + .getJiraConfiguration(); + if (jiraConfiguration != null) { + return jiraConfiguration.getJiraConnectorTypeOfWorkHours(); + } + return null; + } + + @Override + public void setJiraConnectorTypeOfWorkHours(TypeOfWorkHours typeOfWorkHours) { + if (configuration != null) { + JiraConfiguration jiraConfiguration = configuration + .getJiraConfiguration(); + if (jiraConfiguration != null) { + jiraConfiguration + .setJiraConnectorTypeOfWorkHours(typeOfWorkHours); + } + } + } + } diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/common/IConfigurationModel.java b/libreplan-webapp/src/main/java/org/libreplan/web/common/IConfigurationModel.java index aae2f814e..71ffc5aca 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/common/IConfigurationModel.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/common/IConfigurationModel.java @@ -190,4 +190,8 @@ public interface IConfigurationModel { JiraConfiguration getJiraConfiguration(); + TypeOfWorkHours getJiraConnectorTypeOfWorkHours(); + + void setJiraConnectorTypeOfWorkHours(TypeOfWorkHours typeOfWorkHours); + } diff --git a/libreplan-webapp/src/main/webapp/common/configuration.zul b/libreplan-webapp/src/main/webapp/common/configuration.zul index eab2ec6fc..0cf7a0197 100644 --- a/libreplan-webapp/src/main/webapp/common/configuration.zul +++ b/libreplan-webapp/src/main/webapp/common/configuration.zul @@ -442,6 +442,12 @@