Update JUnit version.
Code refactoring.
Imports optimizations.
Changes to UI of E-mail Templates page.
New values for i18n.
Validations of E-mail functionality.
All that is referencing to email template - moved into another package.
Add classes/mapping for notification_queue table.
Update Hibernate version in pom file.
Add role to accept email.
Now Libreplan can be run on Java8.
This implied some changes:
* Latest versions of hibernate use the Bean Validation API. This
implied renaming the imports and use ConstraintViolationException
instead of InvalidValue. Besides some constraints had to be renamed,
otherwise they wouldn't be recognized by Hibernate validation. In
the new version of Hibernate validator @AssertTrue can only be
applied to properties. So all methods it was applied to must follow
the is.* format.
Automatic execution of Bean Validation API is disabled, otherwise an
infinite loop would happen. This is because there are some
validation constraints that do launch queries to the database. This
causes a flush of the objects in the session and automatic
validation is called again.
* A new library for persisting JodaTime is necessary since
joda-time-hibernate is incompatible with hibernate 4. This library
can automatically register its types for Date conversion so they're
removed from configuration.
* Now, in some places, an InvalidDataAccessApiUsageException is thrown
instead of a DataIntegrityViolationException.
This is because no constraint is violated, the API is being used
incorrectly because a transient instance is being provided where a
persisted one was expected.
* In hibernate 4 listeners cannot be configured via properties.
HibernateDatabaseModificationsListener registers itself in its @PostConstruct method.
* ehcache classes used are now different.
Since the scenario was created in the same transaction (due to using
@Before annotation) was not visible in givenOrderFromPrepareForCreate.
Now use a @BeforeTransaction instead so it's visible before.
Otherwise it creates a new Spring context instead of keeping using the
previous one.
This doesn't seem specially dangerous, but in some circumstances can
lead to idle transactions with associated locks that hang up the
execution of the tests. This happened with PostgreSQL version 9.1 in
WorkReportServiceTest.importValidDescriptionValuesToWorkReport().
- OrderCRUDController refactored
- Save or update for OrderSyncInfo instead of creating new instance for each sync
- Name change for TimImpExpInfo to SynchronizationInfo
- JiraSyncInfo is removed instead SynchronizationInfo is used
- All files which are affected by name changes are modified
- Translations added where applicable
- clean up unused variables etc
- JIRA is moved to connectors and all files modified that has to do with this change.
- JiraConfiguration file is removed
- ImportedLabel attribute is deleted from Order and order.hbm.xml
- Imstead of importedLabel is now used the key from OrderSyncInfo
- and some more changes where applicable
Better error handling:
* check if connector connection values are valid
* New ConnectorException
* New .zul file to show import/export failed/success information
* All files modified affected by these changes
DTO classes are renamed to class-name with suffix DTO according to Libreplan naming convention
Modified all classes which are affected by the renamed classes
Comments and author information added where applicable
Test cases modified
getIssues gets now the issues from jira in one request. This is done by adding a
query fields with desired fields to be included in response. Moreover the max_results
is now outside if(!query.isEmpty) statetment.
Test case is modified to read label from jira-properties instead of hard coded
This patch allows the user to store a URL or a comma-separated list of words to
specify the possible labels for the JIRA connector.
FEA: ItEr77S16JiraAndTimConnectorContributionIntegration
Some tests only passes if you have a JIRA server installed, as it's not
something mandatory to run LibrePlan, these tests are ignored by default.
FEA: ItEr77S16JiraAndTimConnectorContributionIntegration
* Renamed PersonalTimesheetsTypeOfWorkHoursBootstrap to
ConfigurationTypeOfWorkHoursBootstrapa in order to set up TypeOfWorkHours for
both personal timesheets and Jira connector.
* Modified ConfigurationBootstrap to ensure that the JiraConfiguration is
created properly.
* Removed unneeded code in ConfigurationModel.
FEA: ItEr77S16JiraAndTimConnectorContributionIntegration
As the same prefix is used in several files it has been defined as a constant in
JiraConfiguration.
FEA: ItEr77S16JiraAndTimConnectorContributionIntegration