Skip to content

Commit 992031d

Browse files
author
Maimoona Kausar
committed
MK: Setup for OpenMRS 2.0.x compatibility
1 parent e03639d commit 992031d

File tree

6 files changed

+42
-24
lines changed

6 files changed

+42
-24
lines changed

openmrs-atomfeed-api/src/main/java/org/openmrs/module/atomfeed/AtomFeedActivator.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@
1414
package org.openmrs.module.atomfeed;
1515

1616

17-
import org.apache.commons.logging.Log;
17+
import org.apache.commons.logging.Log;
1818
import org.apache.commons.logging.LogFactory;
19-
import org.openmrs.module.ModuleActivator;
19+
import org.openmrs.module.BaseModuleActivator;
2020

2121
/**
2222
* This class contains the logic that is run every time this module is either started or stopped.
2323
*/
24-
public class AtomFeedActivator implements ModuleActivator {
24+
public class AtomFeedActivator extends BaseModuleActivator {
2525

2626
protected Log log = LogFactory.getLog(getClass());
2727

openmrs-atomfeed-api/src/main/resources/liquibase.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<!-- Change to CLOB -->
2222
<column name="object" type="varchar(1000)"/>
2323
<column name="category" type="varchar(255)"/>
24-
<column name="date_created" type="TIMESTAMP" />
24+
<column name="date_created" type="TIMESTAMP" defaultValueDate="CURRENT_TIMESTAMP"/>
2525
</createTable>
2626
</changeSet>
2727
<changeSet author="maimoonak" id="opensrp-atomfeed-20160719-2">

openmrs-atomfeed-common/pom.xml

+11-5
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414

1515
<properties>
1616
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
17-
<openMRSVersion>1.8.4</openMRSVersion>
18-
<springVersion>3.0.5.RELEASE</springVersion>
17+
<openMRSVersion>2.0.4</openMRSVersion>
18+
<!-- <springVersion>4.1.4.RELEASE</springVersion> -->
1919
</properties>
2020

2121
<dependencies>
@@ -24,19 +24,25 @@
2424
<artifactId>atomfeed-client</artifactId>
2525
<version>${atomfeed.version}</version>
2626
<scope>provided</scope>
27+
<exclusions>
28+
<exclusion> <!-- declare the exclusion here -->
29+
<groupId>javax.persistence</groupId>
30+
<artifactId>persistence-api</artifactId>
31+
</exclusion>
32+
</exclusions>
2733
</dependency>
28-
<dependency>
34+
<!-- <dependency>
2935
<groupId>org.openmrs.hibernate</groupId>
3036
<artifactId>hibernate-core</artifactId>
3137
<version>3.6.5.Final-mod</version>
3238
<scope>provided</scope>
33-
</dependency>
39+
</dependency>
3440
<dependency>
3541
<groupId>org.springframework</groupId>
3642
<artifactId>spring-beans</artifactId>
3743
<version>${springVersion}</version>
3844
<scope>provided</scope>
39-
</dependency>
45+
</dependency>-->
4046
<dependency>
4147
<groupId>org.openmrs.api</groupId>
4248
<artifactId>openmrs-api</artifactId>

openmrs-atomfeed-common/src/main/java/org/openmrs/module/atomfeed/transaction/support/AtomFeedSpringTransactionManager.java

+18-11
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,25 @@
11
package org.openmrs.module.atomfeed.transaction.support;
22

3-
import org.hibernate.SessionFactory;
4-
import org.hibernate.classic.Session;
3+
import java.lang.reflect.Field;
4+
import java.sql.Connection;
5+
import java.sql.SQLException;
6+
import java.util.HashMap;
7+
import java.util.Map;
8+
9+
import org.hibernate.jdbc.ReturningWork;
510
import org.ict4h.atomfeed.jdbc.JdbcConnectionProvider;
611
import org.ict4h.atomfeed.transaction.AFTransactionManager;
712
import org.ict4h.atomfeed.transaction.AFTransactionWork;
813
import org.openmrs.api.context.ServiceContext;
14+
import org.openmrs.api.db.hibernate.DbSession;
15+
import org.openmrs.api.db.hibernate.DbSessionFactory;
916
import org.springframework.context.ApplicationContext;
1017
import org.springframework.transaction.PlatformTransactionManager;
1118
import org.springframework.transaction.TransactionDefinition;
1219
import org.springframework.transaction.TransactionStatus;
1320
import org.springframework.transaction.support.TransactionCallback;
1421
import org.springframework.transaction.support.TransactionTemplate;
1522

16-
import java.lang.reflect.Field;
17-
import java.sql.Connection;
18-
import java.sql.SQLException;
19-
import java.util.HashMap;
20-
import java.util.Map;
21-
2223
public class AtomFeedSpringTransactionManager implements AFTransactionManager, JdbcConnectionProvider {
2324
private PlatformTransactionManager transactionManager;
2425
private Map<AFTransactionWork.PropagationDefinition, Integer> propagationMap = new HashMap<AFTransactionWork.PropagationDefinition, Integer>();
@@ -54,17 +55,23 @@ private Integer getTxPropagation(AFTransactionWork.PropagationDefinition propaga
5455
@Override
5556
public Connection getConnection() throws SQLException {
5657
//TODO: ensure that only connection associated with current thread current transaction is given
57-
return getSession().connection();
58+
Connection connection = getSession().doReturningWork(new ReturningWork<Connection>() {
59+
@Override
60+
public Connection execute(Connection conn) throws SQLException {
61+
return conn;
62+
}
63+
});
64+
return connection;
5865
}
5966

60-
private Session getSession() {
67+
private DbSession getSession() {
6168
ServiceContext serviceContext = ServiceContext.getInstance();
6269
Class klass = serviceContext.getClass();
6370
try {
6471
Field field = klass.getDeclaredField("applicationContext");
6572
field.setAccessible(true);
6673
ApplicationContext applicationContext = (ApplicationContext) field.get(serviceContext);
67-
SessionFactory factory = (SessionFactory) applicationContext.getBean("sessionFactory");
74+
DbSessionFactory factory = (DbSessionFactory) applicationContext.getBean("dbSessionFactory");
6875
return factory.getCurrentSession();
6976
} catch (Exception e) {
7077
throw new RuntimeException(e);

openmrs-atomfeed-omod/src/main/java/org/openmrs/module/atomfeed/extension/html/AdminList.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,12 @@
1717
import java.util.Map;
1818

1919
import org.openmrs.module.Extension;
20-
import org.openmrs.module.web.extension.AdministrationSectionExt;
2120

2221
/**
2322
* This class defines the links that will appear on the administration page under the
2423
* "atomfeed.title" heading.
2524
*/
26-
public class AdminList extends AdministrationSectionExt {
25+
public class AdminList extends Extension {
2726

2827
/**
2928
* @see AdministrationSectionExt#getMediaType()

pom.xml

+8-2
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@
4646
</modules>
4747

4848
<properties>
49-
<openMRSVersion>1.9.7</openMRSVersion>
49+
<openMRSVersion>2.0.1</openMRSVersion>
5050
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
51-
<atomfeed.version>1.9.1</atomfeed.version>
51+
<atomfeed.version>1.9.4</atomfeed.version>
5252
</properties>
5353

5454
<dependencyManagement>
@@ -57,6 +57,12 @@
5757
<groupId>org.ict4h</groupId>
5858
<artifactId>atomfeed-server</artifactId>
5959
<version>${atomfeed.version}</version>
60+
<exclusions>
61+
<exclusion> <!-- declare the exclusion here -->
62+
<groupId>javax.persistence</groupId>
63+
<artifactId>persistence-api</artifactId>
64+
</exclusion>
65+
</exclusions>
6066
</dependency>
6167

6268
<dependency>

0 commit comments

Comments
 (0)