Merge pull request #12 from myrle-krantz/develop

Updating package names.
diff --git a/build.gradle b/build.gradle
index 5a1e7b7..2bb5f04 100644
--- a/build.gradle
+++ b/build.gradle
@@ -40,19 +40,19 @@
 
 ext.versions = [
         frameworkservicestarter : '0.1.0-BUILD-SNAPSHOT',
-        mifosidentity           : '0.1.0-BUILD-SNAPSHOT',
-        mifosprovisioner        : '0.1.0-BUILD-SNAPSHOT',
-        mifosrhythm             : '0.1.0-BUILD-SNAPSHOT',
-        mifosoffice             : '0.1.0-BUILD-SNAPSHOT',
-        mifoscustomer           : '0.1.0-BUILD-SNAPSHOT',
-        mifosaccounting         : '0.1.0-BUILD-SNAPSHOT',
-        mifosportfolio          : '0.1.0-BUILD-SNAPSHOT',
-        mifosdeposit            : '0.1.0-BUILD-SNAPSHOT',
-        mifosteller             : '0.1.0-BUILD-SNAPSHOT',
-        mifosreporting          : '0.1.0-BUILD-SNAPSHOT',
+        fineractcnidentity      : '0.1.0-BUILD-SNAPSHOT',
+        fineractcnprovisioner   : '0.1.0-BUILD-SNAPSHOT',
+        fineractcnrhythm        : '0.1.0-BUILD-SNAPSHOT',
+        fineractcnoffice        : '0.1.0-BUILD-SNAPSHOT',
+        fineractcncustomer      : '0.1.0-BUILD-SNAPSHOT',
+        fineractcnaccounting    : '0.1.0-BUILD-SNAPSHOT',
+        fineractcnportfolio     : '0.1.0-BUILD-SNAPSHOT',
+        fineractcndeposit       : '0.1.0-BUILD-SNAPSHOT',
+        fineractcnteller        : '0.1.0-BUILD-SNAPSHOT',
+        fineractcnreporting     : '0.1.0-BUILD-SNAPSHOT',
         kuelapcheques           : '0.1.0-BUILD-SNAPSHOT',
-        mifospayroll            : '0.1.0-BUILD-SNAPSHOT',
-        mifosgroup              : '0.1.0-BUILD-SNAPSHOT',
+        fineractcnpayroll       : '0.1.0-BUILD-SNAPSHOT',
+        fineractcngroup         : '0.1.0-BUILD-SNAPSHOT',
         frameworkapi            : '0.1.0-BUILD-SNAPSHOT',
         frameworklang           : '0.1.0-BUILD-SNAPSHOT',
         frameworktest           : '0.1.0-BUILD-SNAPSHOT',
@@ -94,22 +94,22 @@
     compile(
             [group: 'com.google.code.findbugs', name: 'jsr305'],
             [group: 'org.springframework.cloud', name: 'spring-cloud-starter-eureka-server'],
-            [group: 'org.apache.fineract.cn.office', name: 'api', version: versions.mifosoffice],
-            [group: 'org.apache.fineract.cn.provisioner', name: 'api', version: versions.mifosprovisioner],
-            [group: 'org.apache.fineract.cn.identity', name: 'api', version: versions.mifosidentity],
-            [group: 'org.apache.fineract.cn.rhythm', name: 'api', version: versions.mifosrhythm],
-            [group: 'org.apache.fineract.cn.rhythm', name: 'spi', version: versions.mifosrhythm],
+            [group: 'org.apache.fineract.cn.office', name: 'api', version: versions.fineractcnoffice],
+            [group: 'org.apache.fineract.cn.provisioner', name: 'api', version: versions.fineractcnprovisioner],
+            [group: 'org.apache.fineract.cn.identity', name: 'api', version: versions.fineractcnidentity],
+            [group: 'org.apache.fineract.cn.rhythm', name: 'api', version: versions.fineractcnrhythm],
+            [group: 'org.apache.fineract.cn.rhythm', name: 'spi', version: versions.fineractcnrhythm],
 
-            [group: 'org.apache.fineract.cn.customer', name: 'api', version: versions.mifoscustomer],
-            [group: 'org.apache.fineract.cn.accounting', name: 'api', version: versions.mifosaccounting],
-            [group: 'org.apache.fineract.cn.accounting', name: 'importer', version: versions.mifosaccounting],
-            [group: 'org.apache.fineract.cn.portfolio', name: 'api', version: versions.mifosportfolio],
-            [group: 'org.apache.fineract.cn.deposit-account-management', name: 'api', version: versions.mifosdeposit],
-            [group: 'org.apache.fineract.cn.teller', name: 'api', version: versions.mifosteller],
-            [group: 'org.apache.fineract.cn.reporting', name: 'api', version: versions.mifosreporting],
+            [group: 'org.apache.fineract.cn.customer', name: 'api', version: versions.fineractcncustomer],
+            [group: 'org.apache.fineract.cn.accounting', name: 'api', version: versions.fineractcnaccounting],
+            [group: 'org.apache.fineract.cn.accounting', name: 'importer', version: versions.fineractcnaccounting],
+            [group: 'org.apache.fineract.cn.portfolio', name: 'api', version: versions.fineractcnportfolio],
+            [group: 'org.apache.fineract.cn.deposit-account-management', name: 'api', version: versions.fineractcndeposit],
+            [group: 'org.apache.fineract.cn.teller', name: 'api', version: versions.fineractcnteller],
+            [group: 'org.apache.fineract.cn.reporting', name: 'api', version: versions.fineractcnreporting],
             [group: 'org.apache.fineract.cn.cheques', name: 'api', version: versions.kuelapcheques],
-            [group: 'org.apache.fineract.cn.payroll', name: 'api', version: versions.mifospayroll],
-            [group: 'org.apache.fineract.cn.group', name: 'api', version: versions.mifosgroup],
+            [group: 'org.apache.fineract.cn.payroll', name: 'api', version: versions.fineractcnpayroll],
+            [group: 'org.apache.fineract.cn.group', name: 'api', version: versions.fineractcngroup],
 
             [group: 'org.apache.fineract.cn.anubis', name: 'api', version: versions.frameworkanubis],
             [group: 'org.apache.fineract.cn.anubis', name: 'test', version: versions.frameworkanubis],
diff --git a/scripts/windows/initial-setup.bat b/scripts/windows/initial-setup.bat
index 28fe21b..57d63f1 100644
--- a/scripts/windows/initial-setup.bat
+++ b/scripts/windows/initial-setup.bat
@@ -24,72 +24,72 @@
 cd core
 
 REM initialize lang
-git clone https://github.com/%githubAccount%/lang.git
+git clone https://github.com/%githubAccount%/fineract-cn-lang.git
 cd lang
-git remote add upstream https://github.com/mifosio/lang.git
+git remote add upstream https://github.com/apache/fineract-cn-lang.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze async
-git clone https://github.com/%githubAccount%/async.git
+REM initialize async
+git clone https://github.com/%githubAccount%/fineract-cn-async.git
 cd async
-git remote add upstream https://github.com/mifosio/async.git
+git remote add upstream https://github.com/apache/fineract-cn-async.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze cassandra
-git clone https://github.com/%githubAccount%/cassandra.git
+REM initialize cassandra
+git clone https://github.com/%githubAccount%/fineract-cn-cassandra.git
 cd cassandra
-git remote add upstream https://github.com/mifosio/cassandra.git
+git remote add upstream https://github.com/apache/fineract-cn-cassandra.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze mariadb
-git clone https://github.com/%githubAccount%/mariadb.git
+REM initialize mariadb
+git clone https://github.com/%githubAccount%/fineract-cn-mariadb.git
 cd mariadb
-git remote add upstream https://github.com/mifosio/mariadb.git
+git remote add upstream https://github.com/apache/fineract-cn-mariadb.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze data-jpa
-git clone https://github.com/%githubAccount%/data-jpa.git
+REM initialize data-jpa
+git clone https://github.com/%githubAccount%/fineract-cn-data-jpa.git
 cd data-jpa
-git remote add upstream https://github.com/mifosio/data-jpa.git
+git remote add upstream https://github.com/apache/fineract-cn-data-jpa.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze command
-git clone https://github.com/%githubAccount%/command.git
+REM initialize command
+git clone https://github.com/%githubAccount%/fineract-cn-command.git
 cd command
-git remote add upstream https://github.com/mifosio/command.git
+git remote add upstream https://github.com/apache/fineract-cn-command.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze api
-git clone https://github.com/%githubAccount%/api.git
+REM initialize api
+git clone https://github.com/%githubAccount%/fineract-cn-api.git
 cd api
-git remote add upstream https://github.com/mifosio/api.git
+git remote add upstream https://github.com/apache/fineract-cn-api.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze test
-git clone https://github.com/%githubAccount%/test.git
+REM initialize test
+git clone https://github.com/%githubAccount%/fineract-cn-test.git
 cd test
-git remote add upstream https://github.com/mifosio/test.git
+git remote add upstream https://github.com/apache/fineract-cn-test.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
@@ -102,7 +102,7 @@
 mkdir tools
 cd tools
 
-REM initialze javamoney
+REM initialize javamoney
 git clone https://github.com/%githubAccount%/javamoney-lib.git
 cd javamoney-lib
 git remote add upstream https://github.com/JavaMoney/javamoney-lib.git
@@ -111,10 +111,10 @@
 TIMEOUT /T 5
 cd ..
 
-REM initialze crypto
-git clone https://github.com/%githubAccount%/crypto.git
+REM initialize crypto
+git clone https://github.com/%githubAccount%/fineract-cn-crypto.git
 cd crypto
-git remote add upstream https://github.com/mifosio/crypto.git
+git remote add upstream https://github.com/apache/fineract-cn-crypto.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
@@ -123,145 +123,145 @@
 REM return to start folder
 cd ..
 
-REM initialze anubis
-git clone https://github.com/%githubAccount%/anubis.git
+REM initialize anubis
+git clone https://github.com/%githubAccount%/fineract-cn-anubis.git
 cd anubis
-git remote add upstream https://github.com/mifosio/anubis.git
+git remote add upstream https://github.com/apache/fineract-cn-anubis.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
 REM initialize permitted-feign-client
-git clone https://github.com/%githubAccount%/permitted-feign-client.git
+git clone https://github.com/%githubAccount%/fineract-cn-permitted-feign-client.git
 cd permitted-feign-client
-git remote add upstream https://github.com/mifosio/permitted-feign-client.git
+git remote add upstream https://github.com/apache/fineract-cn-permitted-feign-client.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze provisioner
-git clone https://github.com/%githubAccount%/provisioner.git
+REM initialize provisioner
+git clone https://github.com/%githubAccount%/fineract-cn-provisioner.git
 cd provisioner
-git remote add upstream https://github.com/mifosio/provisioner.git
+git remote add upstream https://github.com/apache/fineract-cn-provisioner.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze identity
-git clone https://github.com/%githubAccount%/identity.git
+REM initialize identity
+git clone https://github.com/%githubAccount%/fineract-cn-identity.git
 cd identity
-git remote add upstream https://github.com/mifosio/identity.git
+git remote add upstream https://github.com/apache/fineract-cn-identity.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze rhythm
-git clone https://github.com/%githubAccount%/rhythm.git
+REM initialize rhythm
+git clone https://github.com/%githubAccount%/fineract-cn-rhythm.git
 cd rhythm
-git remote add upstream https://github.com/mifosio/rhythm.git
+git remote add upstream https://github.com/apache/fineract-cn-rhythm.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze template
-git clone https://github.com/%githubAccount%/template.git
+REM initialize template
+git clone https://github.com/%githubAccount%/fineract-cn-template.git
 cd template
-git remote add upstream https://github.com/mifosio/template.git
+git remote add upstream https://github.com/apache/fineract-cn-template.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze office
-git clone https://github.com/%githubAccount%/office.git
+REM initialize office
+git clone https://github.com/%githubAccount%/fineract-cn-office.git
 cd office
-git remote add upstream https://github.com/mifosio/office.git
+git remote add upstream https://github.com/apache/fineract-cn-office.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze customer
-git clone https://github.com/%githubAccount%/customer.git
+REM initialize customer
+git clone https://github.com/%githubAccount%/fineract-cn-customer.git
 cd customer
-git remote add upstream https://github.com/mifosio/customer.git
+git remote add upstream https://github.com/apache/fineract-cn-customer.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze group
-git clone https://github.com/%githubAccount%/group.git
+REM initialize group
+git clone https://github.com/%githubAccount%/fineract-cn-group.git
 cd group
-git remote add upstream https://github.com/mifosio/group.git
+git remote add upstream https://github.com/apache/fineract-cn-group.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze accounting
-git clone https://github.com/%githubAccount%/accounting.git
+REM initialize accounting
+git clone https://github.com/%githubAccount%/fineract-cn-accounting.git
 cd accounting
-git remote add upstream https://github.com/mifosio/accounting.git
+git remote add upstream https://github.com/apache/fineract-cn-accounting.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze portfolio
-git clone https://github.com/%githubAccount%/portfolio.git
+REM initialize portfolio
+git clone https://github.com/%githubAccount%/fineract-cn-portfolio.git
 cd portfolio
-git remote add upstream https://github.com/mifosio/portfolio.git
+git remote add upstream https://github.com/apache/fineract-cn-portfolio.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze deposit-account-management
-git clone https://github.com/%githubAccount%/deposit-account-management.git
+REM initialize deposit-account-management
+git clone https://github.com/%githubAccount%/fineract-cn-deposit-account-management.git
 cd deposit-account-management
-git remote add upstream https://github.com/mifosio/deposit-account-management.git
+git remote add upstream https://github.com/apache/fineract-cn-deposit-account-management.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze cheques
-git clone https://github.com/%githubAccount%/cheques.git
+REM initialize cheques
+git clone https://github.com/%githubAccount%/fineract-cn-cheques.git
 cd cheques
-git remote add upstream https://github.com/mifosio/cheques.git
+git remote add upstream https://github.com/apache/fineract-cn-cheques.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze teller
-git clone https://github.com/%githubAccount%/teller.git
+REM initialize teller
+git clone https://github.com/%githubAccount%/fineract-cn-teller.git
 cd teller
-git remote add upstream https://github.com/mifosio/teller.git
+git remote add upstream https://github.com/apache/fineract-cn-teller.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze reporting
-git clone https://github.com/%githubAccount%/reporting.git
+REM initialize reporting
+git clone https://github.com/%githubAccount%/fineract-cn-reporting.git
 cd reporting
-git remote add upstream https://github.com/mifosio/reporting.git
+git remote add upstream https://github.com/apache/fineract-cn-reporting.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze payroll
-git clone https://github.com/%githubAccount%/payroll.git
+REM initialize payroll
+git clone https://github.com/%githubAccount%/fineract-cn-payroll.git
 cd payroll
-git remote add upstream https://github.com/mifosio/payroll.git
+git remote add upstream https://github.com/apache/fineract-cn-payroll.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
@@ -270,57 +270,39 @@
 mkdir integration-tests
 cd integration-tests
 
-REM initialze service-starter
-git clone https://github.com/%githubAccount%/service-starter.git
+REM initialize service-starter
+git clone https://github.com/%githubAccount%/fineract-cn-service-starter.git
 cd service-starter
-git remote add upstream https://github.com/mifosio/service-starter.git
+git remote add upstream https://github.com/apache/fineract-cn-service-starter.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze default-setup
-git clone https://github.com/%githubAccount%/default-setup.git
+REM initialize default-setup
+git clone https://github.com/%githubAccount%/fineract-cn-default-setup.git
 cd default-setup
-git remote add upstream https://github.com/mifosio/default-setup.git
+git remote add upstream https://github.com/apache/fineract-cn-default-setup.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze demo-server
-git clone https://github.com/%githubAccount%/demo-server.git
+REM initialize demo-server
+git clone https://github.com/%githubAccount%/fineract-cn-demo-server.git
 cd demo-server
-git remote add upstream https://github.com/mifosio/demo-server.git
+git remote add upstream https://github.com/apache/fineract-cn-demo-server.git
 git checkout develop
 CALL gradlew publishToMavenLocal
 TIMEOUT /T 5
 cd ..
 
-REM initialze test-provisioner-identity-organization
-git clone https://github.com/%githubAccount%/test-provisioner-identity-organization.git
-cd test-provisioner-identity-organization
-git remote add upstream https://github.com/mifosio/test-provisioner-identity-organization.git
-git checkout develop
-CALL gradlew build
-TIMEOUT /T 5
 cd ..
 
-REM initialze test-accounting-portfolio
-git clone https://github.com/%githubAccount%/test-accounting-portfolio.git
-cd test-accounting-portfolio
-git remote add upstream https://github.com/mifosio/test-accounting-portfolio.git
-git checkout develop
-CALL gradlew build
-TIMEOUT /T 5
-cd ..
-
-cd ..
-
-REM initialze Web App
-git clone https://github.com/%githubAccount%/fims-web-app.git
+REM initialize Web App
+git clone https://github.com/%githubAccount%/fineract-cn-fims-web-app.git
 cd fims-web-app
-git remote add upstream https://github.com/mifosio/fims-web-app.git
+git remote add upstream https://github.com/apache/fineract-cn-fims-web-app.git
 git checkout develop
 CALL npm i
 TIMEOUT /T 5
diff --git a/src/main/java/io/mifos/dev/ApplicationBuilder.java b/src/main/java/org/apache/fineract/cn/dev/ApplicationBuilder.java
similarity index 91%
rename from src/main/java/io/mifos/dev/ApplicationBuilder.java
rename to src/main/java/org/apache/fineract/cn/dev/ApplicationBuilder.java
index b60e302..aa8570b 100644
--- a/src/main/java/io/mifos/dev/ApplicationBuilder.java
+++ b/src/main/java/org/apache/fineract/cn/dev/ApplicationBuilder.java
@@ -16,9 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev;
+package org.apache.fineract.cn.dev;
 
-import io.mifos.provisioner.api.v1.domain.Application;
+import org.apache.fineract.cn.provisioner.api.v1.domain.Application;
 
 class ApplicationBuilder {
 
diff --git a/src/main/java/io/mifos/dev/DemoServer.java b/src/main/java/org/apache/fineract/cn/dev/DemoServer.java
similarity index 90%
rename from src/main/java/io/mifos/dev/DemoServer.java
rename to src/main/java/org/apache/fineract/cn/dev/DemoServer.java
index a322493..ba5d4de 100644
--- a/src/main/java/io/mifos/dev/DemoServer.java
+++ b/src/main/java/org/apache/fineract/cn/dev/DemoServer.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev;
+package org.apache.fineract.cn.dev;
 
 import org.junit.runner.JUnitCore;
 
@@ -27,6 +27,6 @@
   }
 
   public static void main(String[] args) {
-    JUnitCore.main("io.mifos.dev.ServiceRunner");
+    JUnitCore.main("org.apache.fineract.cn.dev.ServiceRunner");
   }
 }
diff --git a/src/main/java/io/mifos/dev/ServiceRunner.java b/src/main/java/org/apache/fineract/cn/dev/ServiceRunner.java
similarity index 83%
rename from src/main/java/io/mifos/dev/ServiceRunner.java
rename to src/main/java/org/apache/fineract/cn/dev/ServiceRunner.java
index 7d550ed..8995a2b 100644
--- a/src/main/java/io/mifos/dev/ServiceRunner.java
+++ b/src/main/java/org/apache/fineract/cn/dev/ServiceRunner.java
@@ -16,50 +16,50 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev;
+package org.apache.fineract.cn.dev;
 
 import ch.vorburger.mariadb4j.DB;
 import ch.vorburger.mariadb4j.DBConfigurationBuilder;
-import io.mifos.accounting.api.v1.client.LedgerManager;
-import io.mifos.accounting.importer.AccountImporter;
-import io.mifos.accounting.importer.LedgerImporter;
-import io.mifos.anubis.api.v1.domain.AllowedOperation;
-import io.mifos.cheque.api.v1.client.ChequeManager;
-import io.mifos.core.api.config.EnableApiFactory;
-import io.mifos.core.api.context.AutoGuest;
-import io.mifos.core.api.context.AutoSeshat;
-import io.mifos.core.api.context.AutoUserContext;
-import io.mifos.core.api.util.ApiConstants;
-import io.mifos.core.api.util.ApiFactory;
-import io.mifos.core.cassandra.util.CassandraConnectorConstants;
-import io.mifos.core.lang.AutoTenantContext;
-import io.mifos.core.mariadb.util.MariaDBConstants;
-import io.mifos.core.test.env.ExtraProperties;
-import io.mifos.core.test.listener.EnableEventRecording;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.core.test.servicestarter.ActiveMQForTest;
-import io.mifos.core.test.servicestarter.EurekaForTest;
-import io.mifos.core.test.servicestarter.IntegrationTestEnvironment;
-import io.mifos.core.test.servicestarter.Microservice;
-import io.mifos.customer.api.v1.CustomerEventConstants;
-import io.mifos.customer.api.v1.client.CustomerManager;
-import io.mifos.deposit.api.v1.client.DepositAccountManager;
-import io.mifos.group.api.v1.client.GroupManager;
-import io.mifos.identity.api.v1.client.IdentityManager;
-import io.mifos.identity.api.v1.domain.*;
-import io.mifos.identity.api.v1.events.ApplicationPermissionEvent;
-import io.mifos.identity.api.v1.events.ApplicationPermissionUserEvent;
-import io.mifos.identity.api.v1.events.ApplicationSignatureEvent;
-import io.mifos.identity.api.v1.events.EventConstants;
-import io.mifos.office.api.v1.client.OrganizationManager;
-import io.mifos.payroll.api.v1.client.PayrollManager;
-import io.mifos.portfolio.api.v1.client.PortfolioManager;
-import io.mifos.provisioner.api.v1.client.Provisioner;
-import io.mifos.provisioner.api.v1.domain.*;
-import io.mifos.reporting.api.v1.client.ReportManager;
-import io.mifos.rhythm.api.v1.client.RhythmManager;
-import io.mifos.rhythm.api.v1.events.BeatEvent;
-import io.mifos.teller.api.v1.client.TellerManager;
+import org.apache.fineract.cn.accounting.api.v1.client.LedgerManager;
+import org.apache.fineract.cn.accounting.importer.AccountImporter;
+import org.apache.fineract.cn.accounting.importer.LedgerImporter;
+import org.apache.fineract.cn.anubis.api.v1.domain.AllowedOperation;
+import org.apache.fineract.cn.cheque.api.v1.client.ChequeManager;
+import org.apache.fineract.cn.cassandra.util.CassandraConnectorConstants;
+import org.apache.fineract.cn.mariadb.util.MariaDBConstants;
+import org.apache.fineract.cn.test.env.ExtraProperties;
+import org.apache.fineract.cn.test.listener.EnableEventRecording;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.test.servicestarter.ActiveMQForTest;
+import org.apache.fineract.cn.test.servicestarter.EurekaForTest;
+import org.apache.fineract.cn.test.servicestarter.IntegrationTestEnvironment;
+import org.apache.fineract.cn.test.servicestarter.Microservice;
+import org.apache.fineract.cn.customer.api.v1.CustomerEventConstants;
+import org.apache.fineract.cn.customer.api.v1.client.CustomerManager;
+import org.apache.fineract.cn.deposit.api.v1.client.DepositAccountManager;
+import org.apache.fineract.cn.group.api.v1.client.GroupManager;
+import org.apache.fineract.cn.identity.api.v1.client.IdentityManager;
+import org.apache.fineract.cn.identity.api.v1.domain.*;
+import org.apache.fineract.cn.identity.api.v1.events.ApplicationPermissionEvent;
+import org.apache.fineract.cn.identity.api.v1.events.ApplicationPermissionUserEvent;
+import org.apache.fineract.cn.identity.api.v1.events.ApplicationSignatureEvent;
+import org.apache.fineract.cn.identity.api.v1.events.EventConstants;
+import org.apache.fineract.cn.office.api.v1.client.OrganizationManager;
+import org.apache.fineract.cn.payroll.api.v1.client.PayrollManager;
+import org.apache.fineract.cn.portfolio.api.v1.client.PortfolioManager;
+import org.apache.fineract.cn.provisioner.api.v1.client.Provisioner;
+import org.apache.fineract.cn.provisioner.api.v1.domain.*;
+import org.apache.fineract.cn.reporting.api.v1.client.ReportManager;
+import org.apache.fineract.cn.rhythm.api.v1.client.RhythmManager;
+import org.apache.fineract.cn.rhythm.api.v1.events.BeatEvent;
+import org.apache.fineract.cn.teller.api.v1.client.TellerManager;
+import org.apache.fineract.cn.api.config.EnableApiFactory;
+import org.apache.fineract.cn.api.context.AutoGuest;
+import org.apache.fineract.cn.api.context.AutoSeshat;
+import org.apache.fineract.cn.api.context.AutoUserContext;
+import org.apache.fineract.cn.api.util.ApiConstants;
+import org.apache.fineract.cn.api.util.ApiFactory;
+import org.apache.fineract.cn.lang.AutoTenantContext;
 import org.cassandraunit.utils.EmbeddedCassandraServerHelper;
 import org.eclipse.aether.resolution.ArtifactResolutionException;
 import org.junit.*;
@@ -85,8 +85,8 @@
 import java.util.Scanner;
 import java.util.concurrent.TimeUnit;
 
-import static io.mifos.accounting.api.v1.EventConstants.POST_ACCOUNT;
-import static io.mifos.accounting.api.v1.EventConstants.POST_LEDGER;
+import static org.apache.fineract.cn.accounting.api.v1.EventConstants.POST_ACCOUNT;
+import static org.apache.fineract.cn.accounting.api.v1.EventConstants.POST_LEDGER;
 
 @SuppressWarnings("SpringAutowiredFieldsWarningInspection")
 @RunWith(SpringRunner.class)
@@ -121,7 +121,7 @@
   @ActiveMQForTest.EnableActiveMQListen
   @EnableApiFactory
   @EnableEventRecording(maxWait = 60_000)
-  @ComponentScan("io.mifos.dev.listener")
+  @ComponentScan("org.apache.fineract.cn.dev.listener")
   public static class TestConfiguration {
     public TestConfiguration() {
       super();
@@ -390,9 +390,9 @@
       //the request is made outside of rhythm's initialization.
       final UserWithPassword schedulerUser = createSchedulerUserRoleAndPassword(tenantAdminPassword.getAdminPassword());
 
-      provisionApp(tenant, rhythmManager, io.mifos.rhythm.api.v1.events.EventConstants.INITIALIZE);
+      provisionApp(tenant, rhythmManager, org.apache.fineract.cn.rhythm.api.v1.events.EventConstants.INITIALIZE);
 
-      Assert.assertTrue(this.eventRecorder.wait(EventConstants.OPERATION_POST_APPLICATION_PERMISSION, new ApplicationPermissionEvent(rhythmManager.name(), io.mifos.identity.api.v1.PermittableGroupIds.APPLICATION_SELF_MANAGEMENT)));
+      Assert.assertTrue(this.eventRecorder.wait(EventConstants.OPERATION_POST_APPLICATION_PERMISSION, new ApplicationPermissionEvent(rhythmManager.name(), org.apache.fineract.cn.identity.api.v1.PermittableGroupIds.APPLICATION_SELF_MANAGEMENT)));
 
       final Authentication schedulerUserAuthentication;
       try (final AutoGuest ignored2 = new AutoGuest()) {
@@ -403,24 +403,24 @@
       try (final AutoUserContext ignored2 = new AutoUserContext(schedulerUser.getIdentifier(), schedulerUserAuthentication.getAccessToken())) {
         identityManager.api().setApplicationPermissionEnabledForUser(
                 rhythmManager.name(),
-                io.mifos.identity.api.v1.PermittableGroupIds.APPLICATION_SELF_MANAGEMENT,
+                org.apache.fineract.cn.identity.api.v1.PermittableGroupIds.APPLICATION_SELF_MANAGEMENT,
                 schedulerUser.getIdentifier(),
                 true);
-        Assert.assertTrue(this.eventRecorder.wait(EventConstants.OPERATION_PUT_APPLICATION_PERMISSION_USER_ENABLED, new ApplicationPermissionUserEvent(rhythmManager.name(), io.mifos.identity.api.v1.PermittableGroupIds.APPLICATION_SELF_MANAGEMENT, schedulerUser.getIdentifier())));
+        Assert.assertTrue(this.eventRecorder.wait(EventConstants.OPERATION_PUT_APPLICATION_PERMISSION_USER_ENABLED, new ApplicationPermissionUserEvent(rhythmManager.name(), org.apache.fineract.cn.identity.api.v1.PermittableGroupIds.APPLICATION_SELF_MANAGEMENT, schedulerUser.getIdentifier())));
       }
 
-      provisionApp(tenant, ServiceRunner.organizationManager, io.mifos.office.api.v1.EventConstants.INITIALIZE);
+      provisionApp(tenant, ServiceRunner.organizationManager, org.apache.fineract.cn.office.api.v1.EventConstants.INITIALIZE);
 
-      provisionApp(tenant, ledgerManager, io.mifos.accounting.api.v1.EventConstants.INITIALIZE);
+      provisionApp(tenant, ledgerManager, org.apache.fineract.cn.accounting.api.v1.EventConstants.INITIALIZE);
 
-      provisionApp(tenant, portfolioManager, io.mifos.portfolio.api.v1.events.EventConstants.INITIALIZE);
+      provisionApp(tenant, portfolioManager, org.apache.fineract.cn.portfolio.api.v1.events.EventConstants.INITIALIZE);
 
       Assert.assertTrue(this.eventRecorder.wait(EventConstants.OPERATION_POST_PERMITTABLE_GROUP,
-              io.mifos.rhythm.spi.v1.PermittableGroupIds.forApplication(portfolioManager.name())));
+              org.apache.fineract.cn.rhythm.spi.v1.PermittableGroupIds.forApplication(portfolioManager.name())));
 
       for (int i = 0; i < 24; i++) {
         Assert.assertTrue("Beat #" + i,
-                eventRecorder.wait(io.mifos.rhythm.api.v1.events.EventConstants.POST_BEAT,
+                eventRecorder.wait(org.apache.fineract.cn.rhythm.api.v1.events.EventConstants.POST_BEAT,
                         new BeatEvent(portfolioManager.name(), "alignment" + i)));
       }
 
@@ -433,27 +433,27 @@
         //Allow rhythm to send a beat to portfolio as the scheduler user.
         identityManager.api().setApplicationPermissionEnabledForUser(
                 rhythmManager.name(),
-                io.mifos.rhythm.spi.v1.PermittableGroupIds.forApplication(portfolioManager.name()),
+                org.apache.fineract.cn.rhythm.spi.v1.PermittableGroupIds.forApplication(portfolioManager.name()),
                 schedulerUser.getIdentifier(),
                 true);
         Assert.assertTrue(this.eventRecorder.wait(EventConstants.OPERATION_PUT_APPLICATION_PERMISSION_USER_ENABLED,
                 new ApplicationPermissionUserEvent(rhythmManager.name(),
-                        io.mifos.rhythm.spi.v1.PermittableGroupIds.forApplication(portfolioManager.name()), schedulerUser.getIdentifier())));
+                        org.apache.fineract.cn.rhythm.spi.v1.PermittableGroupIds.forApplication(portfolioManager.name()), schedulerUser.getIdentifier())));
       }
 
       provisionApp(tenant, ServiceRunner.customerManager, CustomerEventConstants.INITIALIZE);
 
-      provisionApp(tenant, depositAccountManager, io.mifos.deposit.api.v1.EventConstants.INITIALIZE);
+      provisionApp(tenant, depositAccountManager, org.apache.fineract.cn.deposit.api.v1.EventConstants.INITIALIZE);
 
-      provisionApp(tenant, ServiceRunner.tellerManager, io.mifos.teller.api.v1.EventConstants.INITIALIZE);
+      provisionApp(tenant, ServiceRunner.tellerManager, org.apache.fineract.cn.teller.api.v1.EventConstants.INITIALIZE);
 
-      provisionApp(tenant, ServiceRunner.reportManager, io.mifos.reporting.api.v1.EventConstants.INITIALIZE);
+      provisionApp(tenant, ServiceRunner.reportManager, org.apache.fineract.cn.reporting.api.v1.EventConstants.INITIALIZE);
 
-      provisionApp(tenant, ServiceRunner.chequeManager, io.mifos.cheque.api.v1.EventConstants.INITIALIZE);
+      provisionApp(tenant, ServiceRunner.chequeManager, org.apache.fineract.cn.cheque.api.v1.EventConstants.INITIALIZE);
 
-      provisionApp(tenant, ServiceRunner.payrollManager, io.mifos.payroll.api.v1.EventConstants.INITIALIZE);
+      provisionApp(tenant, ServiceRunner.payrollManager, org.apache.fineract.cn.payroll.api.v1.EventConstants.INITIALIZE);
 
-      provisionApp(tenant, ServiceRunner.groupManager, io.mifos.group.api.v1.EventConstants.INITIALIZE);
+      provisionApp(tenant, ServiceRunner.groupManager, org.apache.fineract.cn.group.api.v1.EventConstants.INITIALIZE);
 
       final UserWithPassword orgAdminUserPassword = createOrgAdminRoleAndUser(tenantAdminPassword.getAdminPassword());
 
@@ -530,11 +530,11 @@
   private Role defineSchedulerRole() {
     final Permission permissionRequestionCreationPermission = new Permission();
     permissionRequestionCreationPermission.setAllowedOperations(Collections.singleton(AllowedOperation.CHANGE));
-    permissionRequestionCreationPermission.setPermittableEndpointGroupIdentifier(io.mifos.identity.api.v1.PermittableGroupIds.APPLICATION_SELF_MANAGEMENT);
+    permissionRequestionCreationPermission.setPermittableEndpointGroupIdentifier(org.apache.fineract.cn.identity.api.v1.PermittableGroupIds.APPLICATION_SELF_MANAGEMENT);
 
     final Permission beatPublishToPortfolioPermission = new Permission();
     beatPublishToPortfolioPermission.setAllowedOperations(Collections.singleton(AllowedOperation.CHANGE));
-    beatPublishToPortfolioPermission.setPermittableEndpointGroupIdentifier(io.mifos.rhythm.spi.v1.PermittableGroupIds.forApplication(portfolioManager.name()));
+    beatPublishToPortfolioPermission.setPermittableEndpointGroupIdentifier(org.apache.fineract.cn.rhythm.spi.v1.PermittableGroupIds.forApplication(portfolioManager.name()));
 
     final Role role = new Role();
     role.setIdentifier("scheduler");
@@ -573,31 +573,31 @@
   private Role defineOrgAdministratorRole() {
     final Permission employeeAllPermission = new Permission();
     employeeAllPermission.setAllowedOperations(AllowedOperation.ALL);
-    employeeAllPermission.setPermittableEndpointGroupIdentifier(io.mifos.office.api.v1.PermittableGroupIds.EMPLOYEE_MANAGEMENT);
+    employeeAllPermission.setPermittableEndpointGroupIdentifier(org.apache.fineract.cn.office.api.v1.PermittableGroupIds.EMPLOYEE_MANAGEMENT);
 
     final Permission officeAllPermission = new Permission();
     officeAllPermission.setAllowedOperations(AllowedOperation.ALL);
-    officeAllPermission.setPermittableEndpointGroupIdentifier(io.mifos.office.api.v1.PermittableGroupIds.OFFICE_MANAGEMENT);
+    officeAllPermission.setPermittableEndpointGroupIdentifier(org.apache.fineract.cn.office.api.v1.PermittableGroupIds.OFFICE_MANAGEMENT);
 
     final Permission userAllPermission = new Permission();
     userAllPermission.setAllowedOperations(AllowedOperation.ALL);
-    userAllPermission.setPermittableEndpointGroupIdentifier(io.mifos.identity.api.v1.PermittableGroupIds.IDENTITY_MANAGEMENT);
+    userAllPermission.setPermittableEndpointGroupIdentifier(org.apache.fineract.cn.identity.api.v1.PermittableGroupIds.IDENTITY_MANAGEMENT);
 
     final Permission roleAllPermission = new Permission();
     roleAllPermission.setAllowedOperations(AllowedOperation.ALL);
-    roleAllPermission.setPermittableEndpointGroupIdentifier(io.mifos.identity.api.v1.PermittableGroupIds.ROLE_MANAGEMENT);
+    roleAllPermission.setPermittableEndpointGroupIdentifier(org.apache.fineract.cn.identity.api.v1.PermittableGroupIds.ROLE_MANAGEMENT);
 
     final Permission selfManagementPermission = new Permission();
     selfManagementPermission.setAllowedOperations(AllowedOperation.ALL);
-    selfManagementPermission.setPermittableEndpointGroupIdentifier(io.mifos.identity.api.v1.PermittableGroupIds.SELF_MANAGEMENT);
+    selfManagementPermission.setPermittableEndpointGroupIdentifier(org.apache.fineract.cn.identity.api.v1.PermittableGroupIds.SELF_MANAGEMENT);
 
     final Permission ledgerManagementPermission = new Permission();
     ledgerManagementPermission.setAllowedOperations(AllowedOperation.ALL);
-    ledgerManagementPermission.setPermittableEndpointGroupIdentifier(io.mifos.accounting.api.v1.PermittableGroupIds.THOTH_LEDGER);
+    ledgerManagementPermission.setPermittableEndpointGroupIdentifier(org.apache.fineract.cn.accounting.api.v1.PermittableGroupIds.THOTH_LEDGER);
 
     final Permission accountManagementPermission = new Permission();
     accountManagementPermission.setAllowedOperations(AllowedOperation.ALL);
-    accountManagementPermission.setPermittableEndpointGroupIdentifier(io.mifos.accounting.api.v1.PermittableGroupIds.THOTH_ACCOUNT);
+    accountManagementPermission.setPermittableEndpointGroupIdentifier(org.apache.fineract.cn.accounting.api.v1.PermittableGroupIds.THOTH_ACCOUNT);
 
     final Role role = new Role();
     role.setIdentifier("orgadmin");
diff --git a/src/main/java/io/mifos/dev/TenantBuilder.java b/src/main/java/org/apache/fineract/cn/dev/TenantBuilder.java
similarity index 84%
rename from src/main/java/io/mifos/dev/TenantBuilder.java
rename to src/main/java/org/apache/fineract/cn/dev/TenantBuilder.java
index aa26635..a934053 100644
--- a/src/main/java/io/mifos/dev/TenantBuilder.java
+++ b/src/main/java/org/apache/fineract/cn/dev/TenantBuilder.java
@@ -16,14 +16,14 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev;
+package org.apache.fineract.cn.dev;
 
-import io.mifos.core.cassandra.util.CassandraConnectorConstants;
-import io.mifos.core.mariadb.util.MariaDBConstants;
-import io.mifos.core.test.env.TestEnvironment;
-import io.mifos.provisioner.api.v1.domain.CassandraConnectionInfo;
-import io.mifos.provisioner.api.v1.domain.DatabaseConnectionInfo;
-import io.mifos.provisioner.api.v1.domain.Tenant;
+import org.apache.fineract.cn.cassandra.util.CassandraConnectorConstants;
+import org.apache.fineract.cn.mariadb.util.MariaDBConstants;
+import org.apache.fineract.cn.test.env.TestEnvironment;
+import org.apache.fineract.cn.provisioner.api.v1.domain.CassandraConnectionInfo;
+import org.apache.fineract.cn.provisioner.api.v1.domain.DatabaseConnectionInfo;
+import org.apache.fineract.cn.provisioner.api.v1.domain.Tenant;
 
 class TenantBuilder {
 
diff --git a/src/main/java/io/mifos/dev/listener/AccountingListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/AccountingListener.java
similarity index 91%
rename from src/main/java/io/mifos/dev/listener/AccountingListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/AccountingListener.java
index 4ee4c6a..8a8b7ba 100644
--- a/src/main/java/io/mifos/dev/listener/AccountingListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/AccountingListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.accounting.api.v1.EventConstants;
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
+import org.apache.fineract.cn.accounting.api.v1.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/ChequesListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/ChequesListener.java
similarity index 87%
rename from src/main/java/io/mifos/dev/listener/ChequesListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/ChequesListener.java
index 6417591..afada30 100644
--- a/src/main/java/io/mifos/dev/listener/ChequesListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/ChequesListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.cheque.api.v1.EventConstants;
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
+import org.apache.fineract.cn.cheque.api.v1.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/CustomerListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/CustomerListener.java
similarity index 87%
rename from src/main/java/io/mifos/dev/listener/CustomerListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/CustomerListener.java
index 54443ef..a5c731d 100644
--- a/src/main/java/io/mifos/dev/listener/CustomerListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/CustomerListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.customer.api.v1.CustomerEventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.customer.api.v1.CustomerEventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/DepositAccountManagementListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/DepositAccountManagementListener.java
similarity index 88%
rename from src/main/java/io/mifos/dev/listener/DepositAccountManagementListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/DepositAccountManagementListener.java
index 2319b71..0ae155b 100644
--- a/src/main/java/io/mifos/dev/listener/DepositAccountManagementListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/DepositAccountManagementListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.deposit.api.v1.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/GroupListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/GroupListener.java
similarity index 88%
rename from src/main/java/io/mifos/dev/listener/GroupListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/GroupListener.java
index 3f56ef2..92ead56 100644
--- a/src/main/java/io/mifos/dev/listener/GroupListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/GroupListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.group.api.v1.EventConstants;
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
+import org.apache.fineract.cn.group.api.v1.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/IdentityListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/IdentityListener.java
similarity index 90%
rename from src/main/java/io/mifos/dev/listener/IdentityListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/IdentityListener.java
index dd9881b..793038e 100644
--- a/src/main/java/io/mifos/dev/listener/IdentityListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/IdentityListener.java
@@ -16,14 +16,14 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.identity.api.v1.events.ApplicationPermissionEvent;
-import io.mifos.identity.api.v1.events.ApplicationPermissionUserEvent;
-import io.mifos.identity.api.v1.events.ApplicationSignatureEvent;
-import io.mifos.identity.api.v1.events.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.identity.api.v1.events.ApplicationPermissionEvent;
+import org.apache.fineract.cn.identity.api.v1.events.ApplicationPermissionUserEvent;
+import org.apache.fineract.cn.identity.api.v1.events.ApplicationSignatureEvent;
+import org.apache.fineract.cn.identity.api.v1.events.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/OrganizationListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/OrganizationListener.java
similarity index 88%
rename from src/main/java/io/mifos/dev/listener/OrganizationListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/OrganizationListener.java
index 236818b..e760627 100644
--- a/src/main/java/io/mifos/dev/listener/OrganizationListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/OrganizationListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.office.api.v1.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.office.api.v1.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/PayrollListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/PayrollListener.java
similarity index 87%
rename from src/main/java/io/mifos/dev/listener/PayrollListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/PayrollListener.java
index 8b8285e..32c2601 100644
--- a/src/main/java/io/mifos/dev/listener/PayrollListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/PayrollListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.payroll.api.v1.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.payroll.api.v1.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/PortfolioListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/PortfolioListener.java
similarity index 92%
rename from src/main/java/io/mifos/dev/listener/PortfolioListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/PortfolioListener.java
index bcb2fd5..673c435 100644
--- a/src/main/java/io/mifos/dev/listener/PortfolioListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/PortfolioListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.portfolio.api.v1.events.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.portfolio.api.v1.events.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/ReportingListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/ReportingListener.java
similarity index 87%
rename from src/main/java/io/mifos/dev/listener/ReportingListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/ReportingListener.java
index 862a95b..f74454a 100644
--- a/src/main/java/io/mifos/dev/listener/ReportingListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/ReportingListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.reporting.api.v1.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.reporting.api.v1.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/RhythmListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/RhythmListener.java
similarity index 87%
rename from src/main/java/io/mifos/dev/listener/RhythmListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/RhythmListener.java
index fc56db0..9dacb88 100644
--- a/src/main/java/io/mifos/dev/listener/RhythmListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/RhythmListener.java
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.rhythm.api.v1.events.BeatEvent;
-import io.mifos.rhythm.api.v1.events.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.rhythm.api.v1.events.BeatEvent;
+import org.apache.fineract.cn.rhythm.api.v1.events.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;
diff --git a/src/main/java/io/mifos/dev/listener/TellerListener.java b/src/main/java/org/apache/fineract/cn/dev/listener/TellerListener.java
similarity index 87%
rename from src/main/java/io/mifos/dev/listener/TellerListener.java
rename to src/main/java/org/apache/fineract/cn/dev/listener/TellerListener.java
index 9aa2f3e..e236318 100644
--- a/src/main/java/io/mifos/dev/listener/TellerListener.java
+++ b/src/main/java/org/apache/fineract/cn/dev/listener/TellerListener.java
@@ -16,11 +16,11 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package io.mifos.dev.listener;
+package org.apache.fineract.cn.dev.listener;
 
-import io.mifos.core.lang.config.TenantHeaderFilter;
-import io.mifos.core.test.listener.EventRecorder;
-import io.mifos.teller.api.v1.EventConstants;
+import org.apache.fineract.cn.test.listener.EventRecorder;
+import org.apache.fineract.cn.teller.api.v1.EventConstants;
+import org.apache.fineract.cn.lang.config.TenantHeaderFilter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jms.annotation.JmsListener;
 import org.springframework.messaging.handler.annotation.Header;