You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by la...@apache.org on 2013/07/12 09:53:05 UTC

[12/18] applying 0001-Refactor-throttling-module.patch

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/767082e3/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/postgresql.sql
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/postgresql.sql b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/postgresql.sql
new file mode 100644
index 0000000..4f897da
--- /dev/null
+++ b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/dbscripts/postgresql.sql
@@ -0,0 +1,427 @@
+DROP TABLE IF EXISTS REG_CLUSTER_LOCK;
+CREATE TABLE REG_CLUSTER_LOCK (
+             REG_LOCK_NAME VARCHAR (20),
+             REG_LOCK_STATUS VARCHAR (20),
+             REG_LOCKED_TIME TIMESTAMP,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             PRIMARY KEY (REG_LOCK_NAME)
+);
+
+DROP TABLE IF EXISTS REG_LOG;
+DROP SEQUENCE IF EXISTS REG_LOG_PK_SEQ;
+CREATE SEQUENCE REG_LOG_PK_SEQ;
+CREATE TABLE REG_LOG (
+             REG_LOG_ID INTEGER DEFAULT NEXTVAL('REG_LOG_PK_SEQ'),
+             REG_PATH VARCHAR (2000),
+             REG_USER_ID VARCHAR (20) NOT NULL,
+             REG_LOGGED_TIME TIMESTAMP NOT NULL,
+             REG_ACTION INTEGER NOT NULL,
+             REG_ACTION_DATA VARCHAR (500),
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             PRIMARY KEY (REG_LOG_ID, REG_TENANT_ID)
+);
+
+DROP TABLE IF EXISTS REG_PATH;
+DROP SEQUENCE IF EXISTS REG_PATH_PK_SEQ;
+CREATE SEQUENCE REG_PATH_PK_SEQ;
+CREATE TABLE REG_PATH(
+             REG_PATH_ID INTEGER DEFAULT NEXTVAL('REG_PATH_PK_SEQ'),
+             REG_PATH_VALUE VARCHAR(2000) NOT NULL,
+             REG_PATH_PARENT_ID INTEGER,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_PATH PRIMARY KEY(REG_PATH_ID, REG_TENANT_ID)
+);
+
+CREATE INDEX REG_PATH_IND_BY_PATH_VALUE ON REG_PATH(REG_PATH_VALUE, REG_TENANT_ID);
+CREATE INDEX REG_PATH_IND_BY_PATH_PARENT_ID  ON REG_PATH(REG_PATH_PARENT_ID, REG_TENANT_ID);
+
+DROP TABLE IF EXISTS REG_CONTENT;
+DROP SEQUENCE IF EXISTS REG_CONTENT_PK_SEQ;
+CREATE SEQUENCE REG_CONTENT_PK_SEQ;
+CREATE TABLE REG_CONTENT (
+             REG_CONTENT_ID INTEGER DEFAULT NEXTVAL('REG_CONTENT_PK_SEQ'),
+             REG_CONTENT_DATA BYTEA,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CONTENT PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
+);
+
+DROP TABLE IF EXISTS REG_CONTENT_HISTORY;
+CREATE TABLE REG_CONTENT_HISTORY (
+             REG_CONTENT_ID INTEGER NOT NULL,
+             REG_CONTENT_DATA BYTEA,
+             REG_DELETED   SMALLINT,
+             REG_TENANT_ID INTEGER DEFAULT 0,
+             CONSTRAINT PK_REG_CONTENT_HISTORY PRIMARY KEY(REG_CONTENT_ID, REG_TENANT_ID)
+);
+
+DROP TABLE IF EXISTS REG_RESOURCE;
+DROP SEQUENCE IF EXISTS REG_RESOURCE_PK_SEQ;
+CREATE SEQUENCE REG_RESOURCE_PK_SEQ;
+CREATE TABLE REG_RESOURCE (
+            REG_PATH_ID         INTEGER NOT NULL,
+            REG_NAME            VARCHAR(256),
+            REG_VERSION         INTEGER DEFAULT NEXTVAL('REG_RESOURCE_PK_SEQ'),
+            REG_MEDIA_TYPE      VARCHAR(500),
+            REG_CREATOR         VARCHAR(20) NOT NULL,
+            REG_CREATED_TIME    TIMESTAMP NOT NULL,
+            REG_LAST_UPDATOR    VARCHAR(20),
+            REG_LAST_UPDATED_TIME    TIMESTAMP NOT NULL,
+            REG_DESCRIPTION     VARCHAR(1000),
+            REG_CONTENT_ID      INTEGER,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_RESOURCE PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
+);
+
+ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE ADD CONSTRAINT REG_RESOURCE_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT (REG_CONTENT_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_IND_BY_NAME  ON REG_RESOURCE(REG_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_IND_BY_PATH_ID_NAME  ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
+
+DROP TABLE IF EXISTS REG_RESOURCE_HISTORY;
+CREATE TABLE REG_RESOURCE_HISTORY (
+            REG_PATH_ID         INTEGER NOT NULL,
+            REG_NAME            VARCHAR(256),
+            REG_VERSION         INTEGER NOT NULL,
+            REG_MEDIA_TYPE      VARCHAR(500),
+            REG_CREATOR         VARCHAR(20) NOT NULL,
+            REG_CREATED_TIME    TIMESTAMP NOT NULL,
+            REG_LAST_UPDATOR    VARCHAR(20),
+            REG_LAST_UPDATED_TIME    TIMESTAMP NOT NULL,
+            REG_DESCRIPTION     VARCHAR(1000),
+            REG_CONTENT_ID      INTEGER,
+            REG_DELETED         SMALLINT,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_RESOURCE_HISTORY PRIMARY KEY(REG_VERSION, REG_TENANT_ID)
+);
+
+ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_PATHID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_HISTORY ADD CONSTRAINT REG_RESOURCE_HIST_FK_BY_CONTENT_ID FOREIGN KEY (REG_CONTENT_ID, REG_TENANT_ID) REFERENCES REG_CONTENT_HISTORY (REG_CONTENT_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_NAME  ON REG_RESOURCE_HISTORY(REG_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_HISTORY_IND_BY_PATH_ID_NAME  ON REG_RESOURCE(REG_PATH_ID, REG_NAME, REG_TENANT_ID);
+
+DROP TABLE IF EXISTS REG_COMMENT;
+DROP SEQUENCE IF EXISTS REG_COMMENT_PK_SEQ;
+CREATE SEQUENCE REG_COMMENT_PK_SEQ;
+CREATE TABLE REG_COMMENT (
+            REG_ID        INTEGER DEFAULT NEXTVAL('REG_COMMENT_PK_SEQ'),
+            REG_COMMENT_TEXT      VARCHAR(500) NOT NULL,
+            REG_USER_ID           VARCHAR(20) NOT NULL,
+            REG_COMMENTED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_COMMENT PRIMARY KEY(REG_ID, REG_TENANT_ID)
+);
+
+DROP TABLE IF EXISTS REG_RESOURCE_COMMENT;
+CREATE TABLE REG_RESOURCE_COMMENT (
+            REG_COMMENT_ID          INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR(256),
+            REG_TENANT_ID INTEGER DEFAULT 0
+);
+
+ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_COMMENT ADD CONSTRAINT REG_RESOURCE_COMMENT_FK_BY_COMMENT_ID FOREIGN KEY (REG_COMMENT_ID, REG_TENANT_ID) REFERENCES REG_COMMENT (REG_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_PATH_ID_AND_RESOURCE_NAME  ON REG_RESOURCE_COMMENT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_COMMENT_IND_BY_VERSION  ON REG_RESOURCE_COMMENT(REG_VERSION, REG_TENANT_ID);
+
+DROP TABLE IF EXISTS REG_RATING;
+DROP SEQUENCE IF EXISTS REG_RATING_PK_SEQ;
+CREATE SEQUENCE REG_RATING_PK_SEQ;
+CREATE TABLE REG_RATING (
+            REG_ID     INTEGER DEFAULT NEXTVAL('REG_RATING_PK_SEQ'),
+            REG_RATING        INTEGER NOT NULL,
+            REG_USER_ID       VARCHAR(20) NOT NULL,
+            REG_RATED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_RATING PRIMARY KEY(REG_ID, REG_TENANT_ID)
+);
+
+DROP TABLE IF EXISTS REG_RESOURCE_RATING;
+CREATE TABLE REG_RESOURCE_RATING (
+            REG_RATING_ID           INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR(256),
+            REG_TENANT_ID INTEGER DEFAULT 0
+);
+
+ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_RATING ADD CONSTRAINT REG_RESOURCE_RATING_FK_BY_RATING_ID FOREIGN KEY (REG_RATING_ID, REG_TENANT_ID) REFERENCES REG_RATING (REG_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_RATING_IND_BY_PATH_ID_AND_RESOURCE_NAME  ON REG_RESOURCE_RATING(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_RATING_IND_BY_VERSION  ON REG_RESOURCE_RATING(REG_VERSION, REG_TENANT_ID);
+
+DROP TABLE IF EXISTS REG_TAG;
+DROP SEQUENCE IF EXISTS REG_TAG_PK_SEQ;
+CREATE SEQUENCE REG_TAG_PK_SEQ;
+CREATE TABLE REG_TAG (
+            REG_ID         INTEGER DEFAULT NEXTVAL('REG_TAG_PK_SEQ'),
+            REG_TAG_NAME       VARCHAR(500) NOT NULL,
+            REG_USER_ID        VARCHAR(20) NOT NULL,
+            REG_TAGGED_TIME    TIMESTAMP NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_TAG PRIMARY KEY(REG_ID, REG_TENANT_ID)
+);
+
+DROP TABLE IF EXISTS REG_RESOURCE_TAG;
+CREATE TABLE REG_RESOURCE_TAG (
+            REG_TAG_ID              INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR(256),
+            REG_TENANT_ID INTEGER DEFAULT 0
+);
+
+ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_TAG ADD CONSTRAINT REG_RESOURCE_TAG_FK_BY_TAG_ID FOREIGN KEY (REG_TAG_ID, REG_TENANT_ID) REFERENCES REG_TAG (REG_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_TAG_IND_BY_PATH_ID_AND_RESOURCE_NAME  ON REG_RESOURCE_TAG(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_TAG_IND_BY_VERSION  ON REG_RESOURCE_TAG(REG_VERSION, REG_TENANT_ID);
+
+DROP TABLE IF EXISTS REG_PROPERTY;
+DROP SEQUENCE IF EXISTS REG_PROPERTY_PK_SEQ;
+CREATE SEQUENCE REG_PROPERTY_PK_SEQ;
+CREATE TABLE REG_PROPERTY (
+            REG_ID         INTEGER DEFAULT NEXTVAL('REG_PROPERTY_PK_SEQ'),
+            REG_NAME       VARCHAR(100) NOT NULL,
+            REG_VALUE        VARCHAR(1000),
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_PROPERTY PRIMARY KEY(REG_ID, REG_TENANT_ID)
+);
+
+DROP TABLE IF EXISTS REG_RESOURCE_PROPERTY;
+CREATE TABLE REG_RESOURCE_PROPERTY (
+            REG_PROPERTY_ID         INTEGER NOT NULL,
+            REG_VERSION             INTEGER,
+            REG_PATH_ID             INTEGER,
+            REG_RESOURCE_NAME       VARCHAR(256),
+            REG_TENANT_ID INTEGER DEFAULT 0
+);
+
+ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+ALTER TABLE REG_RESOURCE_PROPERTY ADD CONSTRAINT REG_RESOURCE_PROPERTY_FK_BY_TAG_ID FOREIGN KEY (REG_PROPERTY_ID, REG_TENANT_ID) REFERENCES REG_PROPERTY (REG_ID, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_PATH_ID_AND_RESOURCE_NAME  ON REG_RESOURCE_PROPERTY(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+CREATE INDEX REG_RESOURCE_PROPERTY_IND_BY_VERSION  ON REG_RESOURCE_PROPERTY(REG_VERSION, REG_TENANT_ID);
+
+
+DROP TABLE IF EXISTS REG_ASSOCIATION;
+DROP SEQUENCE IF EXISTS REG_ASSOCIATION_PK_SEQ;
+CREATE SEQUENCE REG_ASSOCIATION_PK_SEQ;
+CREATE TABLE REG_ASSOCIATION (
+            REG_ASSOCIATION_ID INTEGER DEFAULT NEXTVAL('REG_ASSOCIATION_PK_SEQ'),
+            REG_SOURCEPATH VARCHAR (2000) NOT NULL,
+            REG_TARGETPATH VARCHAR (2000) NOT NULL,
+            REG_ASSOCIATION_TYPE VARCHAR (2000) NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            PRIMARY KEY (REG_ASSOCIATION_ID, REG_TENANT_ID)
+);
+
+DROP TABLE IF EXISTS REG_SNAPSHOT;
+DROP SEQUENCE IF EXISTS REG_SNAPSHOT_PK_SEQ;
+CREATE SEQUENCE REG_SNAPSHOT_PK_SEQ;
+CREATE TABLE REG_SNAPSHOT (
+            REG_SNAPSHOT_ID     INTEGER DEFAULT NEXTVAL('REG_SNAPSHOT_PK_SEQ'),
+            REG_PATH_ID            INTEGER NOT NULL,
+            REG_RESOURCE_NAME      VARCHAR(255),
+            REG_RESOURCE_VIDS     BYTEA NOT NULL,
+            REG_TENANT_ID INTEGER DEFAULT 0,
+            CONSTRAINT PK_REG_SNAPSHOT PRIMARY KEY(REG_SNAPSHOT_ID, REG_TENANT_ID)
+);
+
+CREATE INDEX REG_SNAPSHOT_IND_BY_PATH_ID_AND_RESOURCE_NAME  ON REG_SNAPSHOT(REG_PATH_ID, REG_RESOURCE_NAME, REG_TENANT_ID);
+
+ALTER TABLE REG_SNAPSHOT ADD CONSTRAINT REG_SNAPSHOT_FK_BY_PATH_ID FOREIGN KEY (REG_PATH_ID, REG_TENANT_ID) REFERENCES REG_PATH (REG_PATH_ID, REG_TENANT_ID);
+
+
+-- ################################
+-- USER MANAGER TABLES
+-- ################################
+
+DROP TABLE IF EXISTS UM_TENANT;
+DROP SEQUENCE IF EXISTS UM_TENANT_PK_SEQ;
+CREATE SEQUENCE UM_TENANT_PK_SEQ;
+CREATE TABLE UM_TENANT (
+			UM_ID INTEGER DEFAULT NEXTVAL('UM_TENANT_PK_SEQ'),
+			UM_DOMAIN_NAME VARCHAR(255) NOT NULL,
+            UM_EMAIL VARCHAR(255),
+            UM_ACTIVE BOOLEAN DEFAULT FALSE,
+			PRIMARY KEY (UM_ID),
+			UNIQUE(UM_DOMAIN_NAME));
+
+DROP TABLE IF EXISTS UM_USER CASCADE;			
+DROP SEQUENCE IF EXISTS UM_USER_PK_SEQ;
+CREATE SEQUENCE UM_USER_PK_SEQ;
+CREATE TABLE UM_USER ( 
+             UM_ID INTEGER DEFAULT NEXTVAL('UM_USER_PK_SEQ'), 
+             UM_USER_NAME VARCHAR(255) NOT NULL, 
+             UM_USER_PASSWORD VARCHAR(255) NOT NULL,
+             UM_SALT_VALUE VARCHAR(31),
+             UM_REQUIRE_CHANGE BOOLEAN DEFAULT FALSE,
+             UM_CHANGED_TIME TIMESTAMP NOT NULL,
+             UM_TENANT_ID INTEGER DEFAULT 0, 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID), 
+             UNIQUE(UM_USER_NAME, UM_TENANT_ID)
+); 
+
+DROP TABLE IF EXISTS UM_ROLE CASCADE;
+DROP SEQUENCE IF EXISTS UM_ROLE_PK_SEQ;
+CREATE SEQUENCE UM_ROLE_PK_SEQ;
+CREATE TABLE UM_ROLE ( 
+             UM_ID INTEGER DEFAULT NEXTVAL('UM_ROLE_PK_SEQ'), 
+             UM_ROLE_NAME VARCHAR(255) NOT NULL,
+             UM_TENANT_ID INTEGER DEFAULT 0,  
+             PRIMARY KEY (UM_ID, UM_TENANT_ID),
+             UNIQUE(UM_ROLE_NAME, UM_TENANT_ID) 
+);
+
+DROP TABLE IF EXISTS UM_PERMISSION CASCADE;
+DROP SEQUENCE IF EXISTS UM_PERMISSION_PK_SEQ;
+CREATE SEQUENCE UM_PERMISSION_PK_SEQ;
+CREATE TABLE UM_PERMISSION ( 
+             UM_ID INTEGER DEFAULT NEXTVAL('UM_PERMISSION_PK_SEQ'), 
+             UM_RESOURCE_ID VARCHAR(255) NOT NULL, 
+             UM_ACTION VARCHAR(255) NOT NULL, 
+             UM_TENANT_ID INTEGER DEFAULT 0, 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID)
+); 
+
+CREATE INDEX INDEX_UM_PERMISSION_UM_RESOURCE_ID_UM_ACTION 
+                    ON UM_PERMISSION (UM_RESOURCE_ID, UM_ACTION, UM_TENANT_ID); 
+
+					
+DROP TABLE IF EXISTS UM_ROLE_PERMISSION;
+DROP SEQUENCE IF EXISTS UM_ROLE_PERMISSION_PK_SEQ;
+CREATE SEQUENCE UM_ROLE_PERMISSION_PK_SEQ;
+CREATE TABLE UM_ROLE_PERMISSION ( 
+             UM_ID INTEGER DEFAULT NEXTVAL('UM_ROLE_PERMISSION_PK_SEQ'), 
+             UM_PERMISSION_ID INTEGER NOT NULL, 
+             UM_ROLE_NAME VARCHAR(255) NOT NULL,
+             UM_IS_ALLOWED SMALLINT NOT NULL, 
+             UM_TENANT_ID INTEGER DEFAULT 0, 
+             FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID), 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID) 
+); 
+
+-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_ROLE_ID) 
+DROP TABLE IF EXISTS UM_USER_PERMISSION;
+DROP SEQUENCE IF EXISTS UM_USER_PERMISSION_PK_SEQ;
+CREATE SEQUENCE UM_USER_PERMISSION_PK_SEQ;
+CREATE TABLE UM_USER_PERMISSION ( 
+             UM_ID INTEGER DEFAULT NEXTVAL('UM_USER_PERMISSION_PK_SEQ'), 
+             UM_PERMISSION_ID INTEGER NOT NULL, 
+             UM_USER_NAME VARCHAR(255) NOT NULL,
+             UM_IS_ALLOWED SMALLINT NOT NULL,          
+             UM_TENANT_ID INTEGER DEFAULT 0, 
+             FOREIGN KEY (UM_PERMISSION_ID, UM_TENANT_ID) REFERENCES UM_PERMISSION(UM_ID, UM_TENANT_ID), 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID)
+);
+
+-- REMOVED UNIQUE (UM_PERMISSION_ID, UM_USER_ID) 
+DROP TABLE IF EXISTS UM_USER_ROLE;
+DROP SEQUENCE IF EXISTS UM_USER_ROLE_PK_SEQ;
+CREATE SEQUENCE UM_USER_ROLE_PK_SEQ;
+CREATE TABLE UM_USER_ROLE ( 
+             UM_ID INTEGER DEFAULT NEXTVAL('UM_USER_ROLE_PK_SEQ'), 
+             UM_ROLE_ID INTEGER NOT NULL, 
+             UM_USER_ID INTEGER NOT NULL,
+             UM_TENANT_ID INTEGER DEFAULT 0,  
+             UNIQUE (UM_USER_ID, UM_ROLE_ID, UM_TENANT_ID), 
+             FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_ROLE(UM_ID, UM_TENANT_ID), 
+             FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID), 
+             PRIMARY KEY (UM_ID, UM_TENANT_ID)
+); 
+
+DROP TABLE IF EXISTS UM_USER_ATTRIBUTE;
+DROP SEQUENCE IF EXISTS UM_USER_ATTRIBUTE_PK_SEQ;
+CREATE SEQUENCE UM_USER_ATTRIBUTE_PK_SEQ;
+CREATE TABLE UM_USER_ATTRIBUTE ( 
+            UM_ID INTEGER DEFAULT NEXTVAL('UM_USER_ATTRIBUTE_PK_SEQ'), 
+            UM_ATTR_NAME VARCHAR(255) NOT NULL, 
+            UM_ATTR_VALUE VARCHAR(1024), 
+            UM_PROFILE_ID VARCHAR(255), 
+            UM_USER_ID INTEGER, 
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            FOREIGN KEY (UM_USER_ID, UM_TENANT_ID) REFERENCES UM_USER(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+); 
+
+
+DROP TABLE IF EXISTS UM_DIALECT CASCADE;
+DROP SEQUENCE IF EXISTS UM_DIALECT_PK_SEQ;
+CREATE SEQUENCE UM_DIALECT_PK_SEQ;
+CREATE TABLE UM_DIALECT( 
+            UM_ID INTEGER DEFAULT NEXTVAL('UM_DIALECT_PK_SEQ'), 
+            UM_DIALECT_URI VARCHAR(255) NOT NULL, 
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            UNIQUE(UM_DIALECT_URI, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+); 
+
+DROP TABLE IF EXISTS UM_CLAIM;
+DROP SEQUENCE IF EXISTS UM_CLAIM_PK_SEQ;
+CREATE SEQUENCE UM_CLAIM_PK_SEQ;
+CREATE TABLE UM_CLAIM( 
+            UM_ID INTEGER DEFAULT NEXTVAL('UM_CLAIM_PK_SEQ'), 
+            UM_DIALECT_ID INTEGER NOT NULL, 
+            UM_CLAIM_URI VARCHAR(255) NOT NULL, 
+            UM_DISPLAY_TAG VARCHAR(255), 
+            UM_DESCRIPTION VARCHAR(255), 
+            UM_MAPPED_ATTRIBUTE VARCHAR(255), 
+            UM_REG_EX VARCHAR(255), 
+            UM_SUPPORTED SMALLINT, 
+            UM_REQUIRED SMALLINT, 
+            UM_DISPLAY_ORDER INTEGER,
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            UNIQUE(UM_DIALECT_ID, UM_CLAIM_URI, UM_TENANT_ID), 
+            FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+); 
+
+DROP TABLE IF EXISTS UM_PROFILE_CONFIG;
+DROP SEQUENCE IF EXISTS UM_PROFILE_CONFIG_PK_SEQ;
+CREATE SEQUENCE UM_PROFILE_CONFIG_PK_SEQ;
+CREATE TABLE UM_PROFILE_CONFIG( 
+            UM_ID INTEGER DEFAULT NEXTVAL('UM_PROFILE_CONFIG_PK_SEQ'), 
+            UM_DIALECT_ID INTEGER NOT NULL, 
+            UM_PROFILE_NAME VARCHAR(255), 
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            FOREIGN KEY(UM_DIALECT_ID, UM_TENANT_ID) REFERENCES UM_DIALECT(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+); 
+
+DROP TABLE IF EXISTS UM_CLAIM_BEHAVIOR;    
+DROP SEQUENCE IF EXISTS UM_CLAIM_BEHAVIOR_PK_SEQ;
+CREATE SEQUENCE UM_CLAIM_BEHAVIOR_PK_SEQ;
+CREATE TABLE UM_CLAIM_BEHAVIOR( 
+            UM_ID INTEGER DEFAULT NEXTVAL('UM_CLAIM_BEHAVIOR_PK_SEQ'), 
+            UM_PROFILE_ID INTEGER, 
+            UM_CLAIM_ID INTEGER, 
+            UM_BEHAVIOUR SMALLINT, 
+            UM_TENANT_ID INTEGER DEFAULT 0, 
+            FOREIGN KEY(UM_PROFILE_ID, UM_TENANT_ID) REFERENCES UM_PROFILE_CONFIG(UM_ID, UM_TENANT_ID), 
+            FOREIGN KEY(UM_CLAIM_ID, UM_TENANT_ID) REFERENCES UM_CLAIM(UM_ID, UM_TENANT_ID), 
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+); 
+
+DROP TABLE IF EXISTS UM_HYBRID_ROLE;
+DROP SEQUENCE IF EXISTS UM_HYBRID_ROLE_PK_SEQ;
+CREATE SEQUENCE UM_HYBRID_ROLE_PK_SEQ;
+CREATE TABLE UM_HYBRID_ROLE(
+            UM_ID INTEGER DEFAULT NEXTVAL('UM_HYBRID_ROLE_PK_SEQ'),
+            UM_ROLE_NAME VARCHAR(255),
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+);
+
+DROP TABLE IF EXISTS UM_HYBRID_USER_ROLE;
+DROP SEQUENCE IF EXISTS UM_HYBRID_USER_ROLE_PK_SEQ;
+CREATE SEQUENCE UM_HYBRID_USER_ROLE_PK_SEQ;
+CREATE TABLE UM_HYBRID_USER_ROLE(
+            UM_ID INTEGER DEFAULT NEXTVAL('UM_HYBRID_USER_ROLE_PK_SEQ'),
+            UM_USER_NAME VARCHAR(255),
+            UM_ROLE_ID INTEGER NOT NULL,
+            UM_TENANT_ID INTEGER DEFAULT 0,
+            UNIQUE (UM_USER_NAME, UM_ROLE_ID, UM_TENANT_ID),
+            FOREIGN KEY (UM_ROLE_ID, UM_TENANT_ID) REFERENCES UM_HYBRID_ROLE(UM_ID, UM_TENANT_ID),
+            PRIMARY KEY (UM_ID, UM_TENANT_ID)
+);
+

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/767082e3/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/README
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/README b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/README
new file mode 100644
index 0000000..bdd5963
--- /dev/null
+++ b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/README
@@ -0,0 +1,22 @@
+CARBON_HOME/repository is the main repository for all kind of deployments and
+configurations in Carbon. This includes all Axis2 artifacts, Synapse artifacts etc. In
+addition to that, Axis2 configurations, Carbon configurations etc are also hosted
+under this folder.
+
+1. lib
+   Directory contains all the client side Axis2 libraries. These libraries will be copied here after
+   starting the server once or by running 'ant' from CARBON_HOME/bin.
+
+2. deployment
+   Directory can be used to deploy Axis2 (can have Synapse, BPel stuff as well) artifacts for both
+   server side and client side. See deployment/README for more details.
+
+3. conf
+   Directory contains all the configuration files. axis2.xml, carbon.xml etc.
+
+4. components
+   Directory contains all OSGi related stuff. Carbon bundles, OSGi configuration
+   files and p2 stuff. See components/README for more details.
+
+5. logs
+   Directory contains all Carbon logs.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/767082e3/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/README
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/README b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/README
new file mode 100644
index 0000000..3faeb49
--- /dev/null
+++ b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/README
@@ -0,0 +1,39 @@
+CARBON_HOME/repository/conf directory contains all the Carbon configuration files
+
+1. axis2.xml
+   The Apache Axis2 configuration file. Apache Axis2 is used at the core
+   of WSO2 Carbon.
+
+2. carbon.xml
+   The Carbon server configuration file
+
+3. mime.types
+   Defines MIME types to file extension mappings.
+
+4. README
+   This file
+
+5. registry.xml
+   The Carbon registry configuration file. This will be used when the WSO2
+   Embedded Registry is used.
+
+6. synapse.xml
+   The Apache Synapse configuration file. This will be used if Apache Synapse
+   or WSO2 ESB related Carbon components are deployed.
+
+7. mgt-transports.xml
+   Used in standalone mode to configure HTTP/S transports for the Carbon management console
+
+8. user-mgt.xml
+   The User Manager configuration file used for configuring user management
+   details.
+
+9. wrapper.conf
+   The Java Service Wrapper (JSW) configuration file. JSW is used for running
+   Carbon as a Unix daemon or Windows NT service.
+
+10. secret-conf.properties
+   The Secret Manager Configuration that is used by secret vault component
+
+11  cipher-text.properties
+   File based secret repository 

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/767082e3/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/axis2.xml
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/axis2.xml b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/axis2.xml
new file mode 100644
index 0000000..5aa432a
--- /dev/null
+++ b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/axis2.xml
@@ -0,0 +1,633 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~ http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<axisconfig name="AxisJava2.0">
+
+    <!-- ================================================= -->
+    <!-- Globally engaged modules -->
+    <!-- ================================================= -->
+    <module ref="addressing"/>
+
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment">${hotdeployment}</parameter>
+    <parameter name="hotupdate">${hotupdate}</parameter>
+    <parameter name="enableMTOM" locked="false">optional</parameter>
+    <parameter name="cacheAttachments">true</parameter>
+    <parameter name="attachmentDIR">work/mtom</parameter>
+    <parameter name="sizeThreshold">4000</parameter>
+
+    <!--
+    Defines how the persistence of WS-ReliableMessaging is handled
+
+    Possible value are: inmemory & persistent
+    -->
+    <!-- Following parameter will completely disable REST handling in both the servlets-->
+    <parameter name="disableREST" locked="false">false</parameter>
+
+    <parameter name="Sandesha2StorageManager">inmemory</parameter>
+
+    <!-- This deployment interceptor will be called whenever before a module is initialized or
+     service is deployed -->
+    <listener class="org.wso2.carbon.core.deployment.DeploymentInterceptor"/>
+
+    <!-- setting servicePath. contextRoot is defined in the carbon.xml file -->
+    <parameter name="servicePath">services</parameter>
+
+    <!--the directory in which .aar services are deployed inside axis2 repository-->
+    <parameter name="ServicesDirectory">axis2services</parameter>
+
+    <!--the directory in which modules are deployed inside axis2 repository-->
+    <parameter name="ModulesDirectory">axis2modules</parameter>
+
+    <parameter name="userAgent" locked="true">
+        @product.name@-@product.version@
+    </parameter>
+    <parameter name="server" locked="true">
+        @product.name@-@product.version@
+    </parameter>
+
+    <!-- ========================================================================-->
+
+    <!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
+    <!--that behaviour.-->
+    <parameter name="sendStacktraceDetailsWithFaults">false</parameter>
+
+    <!--If there aren't any information available to find out the fault reason, we set the message of the expcetion-->
+    <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
+    <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
+    <!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
+    <parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
+
+    <!--Set the flag to true if you want to enable transport level session mangment-->
+    <parameter name="manageTransportSession">true</parameter>
+
+    <!-- Synapse Configuration file -->
+    <parameter name="SynapseConfig.ConfigurationFile" locked="false">./repository/conf/synapse.xml</parameter>
+
+    <!-- Synapse Home parameter -->
+    <parameter name="SynapseConfig.HomeDirectory" locked="false">.</parameter>
+
+    <!-- Resolve root used to resolve synapse references like schemas inside a WSDL -->
+    <parameter name="SynapseConfig.ResolveRoot" locked="false">.</parameter>
+
+    <!-- Synapse Server name parameter -->
+    <parameter name="SynapseConfig.ServerName" locked="false">WSO2 Carbon Server</parameter>
+
+    <!--By default, JAXWS services are created by reading annotations. WSDL and schema are generated-->
+    <!--using a separate WSDL generator only when ?wsdl is called. Therefore, even if you engage-->
+    <!--policies etc.. to AxisService, it doesn't appear in the WSDL. By setting the following property-->
+    <!--to true, you can create the AxisService using the generated WSDL and remove the need for a-->
+    <!--WSDL generator. When ?wsdl is called, WSDL is generated in the normal way.-->
+    <parameter name="useGeneratedWSDLinJAXWS">true</parameter>
+
+    <!-- Deployer for the dataservice. -->
+    <!--<deployer extension="dbs" directory="dataservices" class="org.wso2.dataservices.DBDeployer"/>-->
+
+    <!-- Axis1 deployer for Axis2-->
+    <!--<deployer extension="wsdd" class="org.wso2.carbon.axis1services.Axis1Deployer" directory="axis1services"/>-->
+
+    <!-- POJO service deployer for Jar -->
+    <!--<deployer extension="jar" class="org.apache.axis2.deployment.POJODeployer" directory="pojoservices"/>-->
+
+    <!-- POJO service deployer for Class  -->
+    <!--<deployer extension="class" class="org.apache.axis2.deployment.POJODeployer" directory="pojoservices"/>-->
+
+    <!-- JAXWS service deployer  -->
+    <!--<deployer extension=".jar" class="org.apache.axis2.jaxws.framework.JAXWSDeployer" directory="servicejars"/>-->
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
+    <!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
+    <!--any operation -->
+    <!--Note : You can ovride this for particular service by adding the same element with your requirement-->
+
+    <messageReceivers>
+        <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only"
+                         class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/ns/wsdl/robust-in-only"
+                         class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
+                         class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
+    </messageReceivers>
+
+    <messageFormatters>
+        <messageFormatter contentType="application/x-www-form-urlencoded"
+                         class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
+        <messageFormatter contentType="multipart/form-data"
+                         class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
+        <messageFormatter contentType="application/xml"
+                         class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
+        <messageFormatter contentType="text/xml"
+                         class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
+        <messageFormatter contentType="application/soap+xml"
+                         class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
+	<!--messageFormatter contentType="application/x-www-form-urlencoded"
+                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
+        <!--messageFormatter contentType="multipart/form-data"
+                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
+	<!--messageFormatter contentType="application/xml"
+                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
+	<!--messageFormatter contentType="text/html"
+                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
+	<!--messageFormatter contentType="application/soap+xml"
+                        class="org.wso2.carbon.relay.ExpandingMessageFormatter"/-->
+	 <!--messageFormatter contentType="x-application/hessian"
+			class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->
+        <!--<messageFormatter contentType="">
+			class="org.apache.synapse.format.hessian.HessianMessageFormatter"/-->
+   </messageFormatters>
+
+    <messageBuilders>
+        <messageBuilder contentType="application/xml"
+                        class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
+        <messageBuilder contentType="application/x-www-form-urlencoded"
+                        class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
+        <messageBuilder contentType="multipart/form-data"
+                        class="org.apache.axis2.builder.MultipartFormDataBuilder"/>
+        <!--messageBuilder contentType="application/xml"
+     		        class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
+	<!--messageBuilder contentType="application/x-www-form-urlencoded"
+                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
+	<!--messageBuilder contentType="multipart/form-data"
+                        class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
+	<!--messageBuilder contentType="multipart/related"
+                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
+	<!--messageBuilder contentType="application/soap+xml"
+                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
+	<!--messageBuilder contentType="text/plain"
+                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
+	<!--messageBuilder contentType="text/xml"
+                       class="org.wso2.carbon.relay.BinaryRelayBuilder"/-->
+	<!--messageFormatter contentType="text/plain"
+                        class="org.apache.axis2.format.PlainTextBuilder"/-->
+	<!--messageBuilder contentType="x-application/hessian"
+		       class="org.apache.synapse.format.hessian.HessianMessageBuilder"/-->
+    </messageBuilders>
+
+
+    <!-- ================================================= -->
+    <!-- In Transports -->
+    <!-- ================================================= -->
+    <transportReceiver name="http"
+                       class="org.wso2.carbon.core.transports.http.HttpTransportListener">
+        <!--
+           Uncomment the following if you are deploying this within an application server. You
+           need to specify the HTTP port of the application server
+        -->
+        <parameter name="port">9763</parameter>
+
+        <!--
+       Uncomment the following to enable Apache2 mod_proxy. The port on the Apache server is 80
+       in this case.
+        -->
+        <!--<parameter name="proxyPort">80</parameter>-->
+    </transportReceiver>
+
+    <!--Please uncomment this in Multiple Instance Scenario if you want to use NIO Transport Recievers and 
+ 	Remove the current transport REceivers in axis2.xml -->    
+    <!--transportReceiver name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOListener">
+        <parameter name="port" locked="false">8280</parameter>
+        <parameter name="non-blocking" locked="false">true</parameter>
+    </transportReceiver>
+    
+    <transportReceiver name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLListener">
+        <parameter name="port" locked="false">8243</parameter>
+        <parameter name="non-blocking" locked="false">true</parameter>
+        <parameter name="keystore" locked="false">
+            <KeyStore>
+                <Location>resources/security/wso2carbon.jks</Location>
+                <Type>JKS</Type>
+                <Password>wso2carbon</Password>
+                <KeyPassword>wso2carbon</KeyPassword>
+            </KeyStore>
+        </parameter>
+        <parameter name="truststore" locked="false">
+            <TrustStore>
+                <Location>resources/security/client-truststore.jks</Location>
+                <Type>JKS</Type>
+                <Password>wso2carbon</Password>
+            </TrustStore>
+        </parameter>
+    </transportReceiver-->
+    
+
+
+    <transportReceiver name="https"
+                       class="org.wso2.carbon.core.transports.http.HttpsTransportListener">
+        <!--
+           Uncomment the following if you are deploying this within an application server. You
+           need to specify the HTTPS port of the application server
+        -->
+        <parameter name="port">9443</parameter>
+
+        <!--
+       Uncomment the following to enable Apache2 mod_proxy. The port on the Apache server is 443
+       in this case.
+        -->
+        <!--<parameter name="proxyPort">443</parameter>-->
+    </transportReceiver>
+
+    <!--
+       Uncomment the following segment to enable TCP transport.
+       Note : Addressing module should be engaged for TCP transport to work
+    -->
+    <!--<transportReceiver name="tcp"
+                       class="org.apache.axis2.transport.tcp.TCPServer">
+        <parameter name="port">6667</parameter>
+    </transportReceiver>-->
+
+    <!--
+     To Enable SimpleMailListener, please change the configuration
+     parameters and uncomment the following
+    -->
+    <!--<transportReceiver name="mailto" class="org.apache.axis2.transport.mail.SimpleMailListener">
+        <parameter name="mail.pop3.host">localhost</parameter>
+        <parameter name="mail.pop3.user">red</parameter>
+        <parameter name="mail.store.protocol">pop3</parameter>
+        <parameter name="transport.mail.pop3.password">red</parameter>
+        <parameter name="transport.mail.replyToAddress">red@localhost</parameter>
+        <parameter name="transport.listener.interval">3000</parameter>
+    </transportReceiver>-->
+
+    <!--
+      Uncomment this and configure as appropriate for JMS transport support,
+      after setting up your JMS environment (e.g. ActiveMQ)
+    -->
+    <!--<transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
+        <parameter name="myTopicConnectionFactory">
+        	<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+        	<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
+        	<parameter name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</parameter>
+        </parameter>
+
+        <parameter name="myQueueConnectionFactory">
+        	<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+        	<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
+        	<parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
+        </parameter>
+
+        <parameter name="default">
+        	<parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+        	<parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
+        	<parameter name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
+        </parameter>
+    </transportReceiver>-->
+
+    <!-- ================================================= -->
+    <!-- Out Transports -->
+    <!-- ================================================= -->
+
+    <transportSender name="tcp"
+                     class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
+    <transportSender name="local"
+                     class="org.apache.axis2.transport.local.LocalTransportSender"/>
+    <!--<transportSender name="jms"
+                     class="org.apache.axis2.transport.jms.JMSSender"/>-->
+    <transportSender name="http"
+                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
+        <parameter name="PROTOCOL">HTTP/1.1</parameter>
+        <parameter name="Transfer-Encoding">chunked</parameter>
+        <!-- This parameter has been added to overcome problems encounted in SOAP action parameter -->
+        <parameter name="OmitSOAP12Action">true</parameter>
+    </transportSender>
+    <transportSender name="https"
+                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
+        <parameter name="PROTOCOL">HTTP/1.1</parameter>
+        <parameter name="Transfer-Encoding">chunked</parameter>
+        <!-- This parameter has been added to overcome problems encounted in SOAP action parameter -->
+        <parameter name="OmitSOAP12Action">true</parameter>
+    </transportSender>
+
+    <!--<transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender">
+        <parameter name="mail.smtp.host">localhost</parameter>
+    </transportSender>-->
+
+
+    <!--Please uncomment this in Multiple Instance Scenario if you want to use NIO sender -->
+    <!--  
+    <transportSender name="http" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSender">
+        <parameter name="non-blocking" locked="false">true</parameter>
+    </transportSender>
+    <transportSender name="https" class="org.apache.synapse.transport.nhttp.HttpCoreNIOSSLSender">
+        <parameter name="non-blocking" locked="false">true</parameter>
+        <parameter name="keystore" locked="false">
+            <KeyStore>
+                <Location>resources/security/wso2carbon.jks</Location>
+                <Type>JKS</Type>
+                <Password>wso2carbon</Password>
+                <KeyPassword>wso2carbon</KeyPassword>
+            </KeyStore>
+        </parameter>
+        <parameter name="truststore" locked="false">
+            <TrustStore>
+                <Location>resources/security/client-truststore.jks</Location>
+                <Type>JKS</Type>
+                <Password>wso2carbon</Password>
+            </TrustStore>
+        </parameter>
+    </transportSender>
+	-->
+
+
+
+    <!-- ================================================= -->
+    <!-- Phases  -->
+    <!-- ================================================= -->
+    <phaseOrder type="InFlow">
+        <!--  System pre defined phases       -->
+        <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+        </phase>
+        <phase name="Addressing">
+             <handler name="AddressingBasedDispatcher"
+                     class="org.wso2.carbon.core.multitenancy.MultitenantAddressingBasedDispatcher">
+                 <order phase="Addressing"/>
+            </handler>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+            <handler name="RequestURIOperationDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+
+            <handler name="HTTPLocationBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
+
+            <handler name="MultitenantDispatcher"
+                     class="org.wso2.carbon.core.multitenancy.MultitenantDispatcher"/>
+        </phase>
+        <!--  System pre defined phases       -->
+        <phase name="RMPhase"/>
+        <phase name="OpPhase"/>
+        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
+        <phase name="OperationInPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFlow">
+        <phase name="RMPhase"/>
+        <phase name="OpPhase"/>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutPhase"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+	    <phase name="Security">
+            <!--<handler name="test"
+                     class="org.wso2.carbon.core.multitenancy.MultitenantMeteringHandler">
+                <order phase="Security"/>
+            </handler>-->
+        </phase>
+    </phaseOrder>
+    <phaseOrder type="InFaultFlow">
+        <!--  System pre defined phases       -->
+        <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+            <!--<handler name="POXSecHandler"
+                     class="org.wso2.carbon.core.security.pox.POXSecurityHandler">
+                <order phase="Transport"/>
+            </handler>-->
+        </phase>
+
+        <phase name="Addressing">
+             <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
+                 <order phase="Addressing"/>
+            </handler>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+            <handler name="RequestURIOperationDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+
+            <handler name="HTTPLocationBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
+            <!--handler name="AdminServiceAuthenticationHandler"
+                     class="org.wso2.carbon.core.auth.AuthenticationHandler"/-->
+        </phase>
+        <phase name="RMPhase"/>
+        <phase name="OpPhase"/>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationInFaultPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFaultFlow">
+        <phase name="RMPhase"/>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutFaultPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+        <phase name="Security"/>
+    </phaseOrder>
+
+    <!-- ================================================= -->
+    <!-- Clustering  -->
+    <!-- ================================================= -->
+    <!--
+     To enable clustering for this node, set the value of "enable" attribute of the "clustering"
+     element to "true". The initialization of a node in the cluster is handled by the class
+     corresponding to the "class" attribute of the "clustering" element. It is also responsible for
+     getting this node to join the cluster.
+     -->
+    <clustering class="org.apache.axis2.clustering.tribes.TribesClusteringAgent" enable="false">
+
+        <!--
+           This parameter indicates whether the cluster has to be automatically initalized
+           when the AxisConfiguration is built. If set to "true" the initialization will not be
+           done at that stage, and some other party will have to explictly initialize the cluster.
+        -->
+        <parameter name="AvoidInitiation">true</parameter>
+
+        <!--
+           The membership scheme used in this setup. The only values supported at the moment are
+           "multicast" and "wka"
+
+           1. multicast - membership is automatically discovered using multicasting
+           2. wka - Well-Known Address based multicasting. Membership is discovered with the help
+                    of one or more nodes running at a Well-Known Address. New members joining a
+                    cluster will first connect to a well-known node, register with the well-known node
+                    and get the membership list from it. When new members join, one of the well-known
+                    nodes will notify the others in the group. When a member leaves the cluster or
+                    is deemed to have left the cluster, it will be detected by the Group Membership
+                    Service (GMS) using a TCP ping mechanism.
+        -->
+        <parameter name="membershipScheme">multicast</parameter>
+
+        <!--
+         The clustering domain/group. Nodes in the same group will belong to the same multicast
+         domain. There will not be interference between nodes in different groups.
+        -->
+        <parameter name="domain">wso2.carbon.domain</parameter>
+
+        <!--
+           When a Web service request is received, and processed, before the response is sent to the
+           client, should we update the states of all members in the cluster? If the value of
+           this parameter is set to "true", the response to the client will be sent only after
+           all the members have been updated. Obviously, this can be time consuming. In some cases,
+           such this overhead may not be acceptable, in which case the value of this parameter
+           should be set to "false"
+        -->
+        <parameter name="synchronizeAll">true</parameter>
+
+        <!--
+          The maximum number of times we need to retry to send a message to a particular node
+          before giving up and considering that node to be faulty
+        -->
+        <parameter name="maxRetries">10</parameter>
+
+        <!-- The multicast address to be used -->
+        <parameter name="mcastAddress">228.0.0.4</parameter>
+
+        <!-- The multicast port to be used -->
+        <parameter name="mcastPort">45564</parameter>
+
+        <!-- The frequency of sending membership multicast messages (in ms) -->
+        <parameter name="mcastFrequency">500</parameter>
+
+        <!-- The time interval within which if a member does not respond, the member will be
+         deemed to have left the group (in ms)
+         -->
+        <parameter name="memberDropTime">3000</parameter>
+
+        <!--
+           The IP address of the network interface to which the multicasting has to be bound to.
+           Multicasting would be done using this interface.
+        -->
+	<!--
+        <parameter name="mcastBindAddress">127.0.0.1</parameter>
+	-->
+        <!-- The host name or IP address of this member -->
+        <!--
+	<parameter name="localMemberHost">127.0.0.1</parameter>
+	-->
+        <!--
+        The TCP port used by this member. This is the port through which other nodes will
+        contact this member
+         -->
+        <parameter name="localMemberPort">4000</parameter>
+
+        <!--
+        Preserve message ordering. This will be done according to sender order.
+        -->
+        <parameter name="preserveMessageOrder">true</parameter>
+
+        <!--
+        Maintain atmost-once message processing semantics
+        -->
+        <parameter name="atmostOnceMessageSemantics">true</parameter>
+
+        <!--
+        Properties specific to this member
+        -->
+        <parameter name="properties">
+            <property name="backendServerURL" value="https://${hostName}:${httpsPort}/services/"/>
+            <property name="mgtConsoleURL" value="https://${hostName}:${httpsPort}/"/>
+        </parameter>
+
+        <!--
+           The list of static or well-known members. These entries will only be valid if the
+           "membershipScheme" above is set to "wka"
+        -->
+        <members>
+            <member>
+                <hostName>127.0.0.1</hostName>
+                <port>4000</port>
+            </member>
+            <member>
+                <hostName>127.0.0.1</hostName>
+                <port>4001</port>
+            </member>
+        </members>
+
+        <!--
+        Enable the groupManagement entry if you need to run this node as a cluster manager.
+        Multiple application domains with different GroupManagementAgent implementations
+        can be defined in this section.
+        -->
+        <groupManagement enable="false">
+            <applicationDomain name="apache.axis2.application.domain"
+                               description="Axis2 group"
+                               agent="org.apache.axis2.clustering.management.DefaultGroupManagementAgent"/>
+        </groupManagement>
+
+        <!--
+           This interface is responsible for handling management of a specific node in the cluster
+           The "enable" attribute indicates whether Node management has been enabled
+        -->
+        <nodeManager class="org.apache.axis2.clustering.management.DefaultNodeManager"
+                     enable="true"/>
+
+        <!--
+           This interface is responsible for handling state replication. The property changes in
+           the Axis2 context hierarchy in this node, are propagated to all other nodes in the cluster.
+
+           The "excludes" patterns can be used to specify the prefixes (e.g. local_*) or
+           suffixes (e.g. *_local) of the properties to be excluded from replication. The pattern
+           "*" indicates that all properties in a particular context should not be replicated.
+
+            The "enable" attribute indicates whether context replication has been enabled
+        -->
+        <stateManager class="org.apache.axis2.clustering.state.DefaultStateManager"
+                      enable="true">
+            <replication>
+                <defaults>
+                    <exclude name="local_*"/>
+                    <exclude name="LOCAL_*"/>
+                </defaults>
+                <context class="org.apache.axis2.context.ConfigurationContext">
+                    <exclude name="local_*"/>
+                </context>
+                <context class="org.apache.axis2.context.ServiceGroupContext">
+                    <exclude name="local_*"/>
+                </context>
+                <context class="org.apache.axis2.context.ServiceContext">
+                    <exclude name="local_*"/>
+                </context>
+            </replication>
+        </stateManager>
+    </clustering>
+</axisconfig>

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/767082e3/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/axis2_client.xml
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/axis2_client.xml b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/axis2_client.xml
new file mode 100644
index 0000000..4f2e1b9
--- /dev/null
+++ b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/axis2_client.xml
@@ -0,0 +1,283 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~ http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<axisconfig name="AxisJava2.0">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment">true</parameter>
+    <parameter name="hotupdate">false</parameter>
+    <parameter name="enableMTOM">false</parameter>
+
+    <!--If turned on with use the Accept header of the request to determine the contentType of the
+    response-->
+    <parameter name="httpContentNegotiation">false</parameter>
+
+    <!--During a fault, stacktrace can be sent with the fault message. The following flag will control -->
+    <!--that behaviour.-->
+    <parameter name="sendStacktraceDetailsWithFaults">true</parameter>
+
+    <!--If there aren't any information available to find out the fault reason, we set the message of the exception-->
+    <!--as the faultreason/Reason. But when a fault is thrown from a service or some where, it will be -->
+    <!--wrapped by different levels. Due to this the initial exception message can be lost. If this flag-->
+    <!--is set then, Axis2 tries to get the first exception and set its message as the faultreason/Reason.-->
+    <parameter name="DrillDownToRootCauseForFaultReason">false</parameter>
+
+    <!--This is the user name and password of admin console-->
+    <parameter name="userName">admin</parameter>
+    <parameter name="password">axis2</parameter>
+
+    <!--To override repository/services you need to uncomment following parameter and value SHOULD be absolute file path.-->
+    <!--ServicesDirectory only works on the following cases-->
+    <!---File based configurator and in that case the value should be a file URL (http:// not allowed)-->
+    <!---When creating URL Based configurator with URL “file://”  -->
+    <!--- War based configurator with expanded case , -->
+
+    <!--All the other scenarios it will be ignored.-->
+    <!--<parameter name="ServicesDirectory">service</parameter>-->
+    <!--To override repository/modules you need to uncomment following parameter and value SHOULD be absolute file path-->
+    <!--<parameter name="ModulesDirectory">modules</parameter>-->
+
+    <!--Following params will set the proper context paths for invocations. All the endpoints will have a commons context-->
+    <!--root which can configured using the following contextRoot parameter-->
+    <!--<parameter name="contextRoot">axis2</parameter>-->
+
+    <!--Our HTTP endpoints can handle both REST and SOAP. Following parameters can be used to distinguish those endpoints-->
+    <!--<parameter name="servicePath">services</parameter>-->
+    <!--<parameter name="restPath">rest</parameter>-->
+
+    <!-- Following parameter will completely disable REST handling in Axis2-->
+    <parameter name="disableREST" locked="false">false</parameter>
+
+    <!--POJO deployer , this will alow users to drop .class file and make that into a service-->
+    <deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/>
+
+    <!-- Following parameter will set the host name for the epr-->
+    <!--<parameter name="hostname" locked="true">myhost.com</parameter>-->
+
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
+    <!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
+    <!--any operation -->
+    <!--Note : You can override this for particular service by adding the same element with your requirement-->
+    <messageReceivers>
+        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
+                         class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
+                         class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-only"
+                         class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/2006/01/wsdl/in-out"
+                         class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
+    </messageReceivers>
+
+    <!-- ================================================= -->
+    <!-- Message Formatter -->
+    <!-- ================================================= -->
+    <!--Following content type to message formatter mapping can be used to implement support for different message -->
+    <!--format  serialization in Axis2. These message formats are expected to be resolved based on the content type. -->
+    <messageFormatters>
+        <messageFormatter contentType="application/x-www-form-urlencoded"
+                          class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
+        <messageFormatter contentType="multipart/form-data"
+                          class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
+        <messageFormatter contentType="application/xml"
+                          class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
+        <messageFormatter contentType="text/xml"
+                          class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
+        <messageFormatter contentType="application/soap+xml"
+                          class="org.apache.axis2.transport.http.SOAPMessageFormatter"/>
+    </messageFormatters>
+
+    <!-- ================================================= -->
+    <!-- Message Builders -->
+    <!-- ================================================= -->
+    <!--Following content type to builder mapping can be used to implement support for different message -->
+    <!--formats in Axis2. These message formats are expected to be resolved based on the content type. -->
+    <messageBuilders>
+        <messageBuilder contentType="application/xml"
+                        class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
+        <messageBuilder contentType="application/x-www-form-urlencoded"
+                        class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
+        <!--Left commented because it adds the depandancy of servlet-api to other modules.
+        Please uncomment to Receive messages in multipart/form-data format-->
+        <!--<messageBuilder contentType="multipart/form-data"-->
+        <!--class="org.apache.axis2.builder.MultipartFormDataBuilder"/>-->
+    </messageBuilders>
+
+    <!-- ================================================= -->
+    <!-- Target Resolvers -->
+    <!-- ================================================= -->
+    <!-- Uncomment the following and specify the class name for your TargetResolver to add -->
+    <!-- a TargetResolver. TargetResolvers are used to process the To EPR for example to -->
+    <!-- choose a server in a cluster -->
+    <!--<targetResolvers>-->
+    <!--<targetResolver class="" />-->
+    <!--</targetResolvers>-->
+
+
+    <!-- ================================================= -->
+    <!-- Transport Ins -->
+    <!-- ================================================= -->
+    <transportReceiver name="http"
+                       class="org.apache.axis2.transport.http.SimpleHTTPServer">
+        <parameter name="port">6071</parameter>
+        <!--If you want to give your own host address for EPR generation-->
+        <!--uncomment following parameter , and set as you required.-->
+        <!--<parameter name="hostname">http://myApp.com/ws</parameter>-->
+    </transportReceiver>
+
+    <!--Uncomment if you want to have TCP transport support-->
+    <!--<transportReceiver name="tcp"
+                       class="org.apache.axis2.transport.tcp.TCPServer">
+        <parameter name="port">6061</parameter>-->
+    <!--If you want to give your own host address for EPR generation-->
+    <!--uncomment following parameter , and set as you required.-->
+    <!--<parameter name="hostname">tcp://myApp.com/ws</parameter>-->
+    <!--</transportReceiver>-->
+
+    <!-- ================================================= -->
+    <!-- Transport Outs -->
+    <!-- ================================================= -->
+
+    <!--<transportSender name="jms"-->
+    <!--class="org.apache.axis2.transport.jms.JMSSender"/>-->
+    <transportSender name="tcp"
+                     class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
+    <transportSender name="local"
+                     class="org.apache.axis2.transport.local.LocalTransportSender"/>
+    <transportSender name="http"
+                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
+        <parameter name="PROTOCOL">HTTP/1.1</parameter>
+        <parameter name="Transfer-Encoding">chunked</parameter>
+        <parameter name="SO_TIMEOUT">60000</parameter>
+        <parameter name="CONNECTION_TIMEOUT">60000</parameter>
+    </transportSender>
+    <transportSender name="https"
+                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
+        <parameter name="PROTOCOL">HTTP/1.1</parameter>
+        <parameter name="Transfer-Encoding">chunked</parameter>
+        <parameter name="SO_TIMEOUT">60000</parameter>
+        <parameter name="CONNECTION_TIMEOUT">60000</parameter>
+    </transportSender>
+    <!--<transportSender name="java"-->
+    <!--class="org.apache.axis2.transport.java.JavaTransportSender"/>-->
+
+
+    <!-- ================================================= -->
+    <!--  SOAP Role Configuration                          -->
+    <!-- ================================================= -->
+    <!-- Use the following pattern to configure this axis2
+         instance to act in particular roles. Note that in
+         the absence of any configuration, Axis2 will act 
+         only in the ultimate receiver role -->
+    <!--
+    <SOAPRoleConfiguration isUltimateReceiver="true">
+    	<role>http://my/custom/role</role>
+    </SOAPRoleConfiguration>
+	-->
+
+    <!-- ================================================= -->
+    <!-- Phases  -->
+    <!-- ================================================= -->
+    <phaseOrder type="InFlow">
+        <!--  System pre-defined phases       -->
+        <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
+                <order phase="Transport"/>
+            </handler>
+        </phase>
+        <phase name="Addressing">
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
+                <order phase="Addressing"/>
+            </handler>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+            <handler name="RequestURIOperationDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+
+            <handler name="HTTPLocationBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
+        </phase>
+        <phase name="RMPhase"/>
+        <!--  System pre defined phases       -->
+        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
+        <phase name="OperationInPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutPhase"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="RMPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+        <phase name="Security"/>
+    </phaseOrder>
+    <phaseOrder type="InFaultFlow">
+        <phase name="Addressing">
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
+                <order phase="Addressing"/>
+            </handler>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
+            <handler name="RequestURIOperationDispatcher"
+                     class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
+
+            <handler name="HTTPLocationBasedDispatcher"
+                     class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
+        </phase>
+        <phase name="RMPhase"/>
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationInFaultPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFaultFlow">
+        <!--      user can add his own phases to this area  -->
+        <phase name="OperationOutFaultPhase"/>
+        <phase name="RMPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+        <phase name="Security"/>
+    </phaseOrder>
+</axisconfig>

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/767082e3/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/broker-config.xml
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/broker-config.xml b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/broker-config.xml
new file mode 100644
index 0000000..6ceb834
--- /dev/null
+++ b/components/org.apache.stratos.throttling.manager/src/test/resources/carbon-home/repository/conf/broker-config.xml
@@ -0,0 +1,55 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~ http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<eventBroker xmlns="http://wso2.org/ns/2009/09/eventing">
+    <eventStream name="RegistryEventBroker">
+        <subscriptionManager class="org.wso2.carbon.event.broker.subscriptions.EmbeddedRegistryBasedSubscriptionManager">
+            <parameter name="topicHeaderName">topic</parameter>
+            <parameter name="topicHeaderNS">http://wso2.org/ns/2009/09/eventing/notify</parameter>
+            <parameter name="subscriptionStoragePath">/repository/components/org.wso2.carbon.event</parameter>
+        </subscriptionManager>
+        <!-- Uncomment to to RemoteRegistryBasedSubscriptionManager -->
+        <!--subscriptionManager class="org.wso2.carbon.event.broker.subscriptions.RemoteRegistryBasedSubscriptionManager">
+            <parameter name="topicHeaderName">topic</parameter>
+            <parameter name="topicHeaderNS">http://wso2.org/ns/2009/09/eventing/notify</parameter>
+            <parameter name="subscriptionStoragePath">/repository/components/org.wso2.carbon.event</parameter>
+            <parameter name="registryURL">http://remote-ip:port/registry/</parameter>
+            <parameter name="username">username</parameter>
+            <parameter name="password">password</parameter>
+        </subscriptionManager-->
+        <eventDispatcher>org.wso2.carbon.registry.eventing.RegistryEventDispatcher</eventDispatcher>
+        <notificationManager class="org.wso2.carbon.event.broker.CarbonNotificationManager">
+            <parameter name="minSpareThreads">25</parameter>
+            <parameter name="maxThreads">150</parameter>
+            <parameter name="maxQueuedRequests">100</parameter>
+            <!-- Keep Alive time in nano seconds -->
+            <parameter name="keepAliveTime">1000</parameter>
+            <!-- Specify path of security policy file to enable security. -->
+            <!--parameter name="securityPolicy">policypath</parameter-->
+
+            <!-- Parameters specific to the Registry Event Broker configuration -->
+            <!-- Set this as false to disable displaying of registry URL in notification e-mails -->
+            <parameter name="showRegistryURL" locked="true">true</parameter>
+            <!-- Set this to print the powered-by message in notification e-mails. -->
+            <parameter name="registryPoweredBy" locked="true">This message is automatically generated by the ${product.name}.</parameter>
+            <!-- Set this to customize the URL printed in notification e-mails. -->
+            <!--parameter name="registryURL" locked="true">https://localhost:9443/carbon/</parameter-->
+        </notificationManager>
+    </eventStream>
+</eventBroker>