You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by sa...@apache.org on 2013/07/02 11:37:51 UTC

[09/23] Refactoring org.wso2.carbon to org.apache.stratos

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/BillingManager.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/BillingManager.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/BillingManager.java
deleted file mode 100644
index a523b60..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/BillingManager.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.wso2.carbon.billing.core.conf.BillingConfiguration;
-import org.wso2.carbon.billing.core.conf.BillingTaskConfiguration;
-import org.wso2.carbon.billing.core.jdbc.DataAccessObject;
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * A class to handle multiple billing engines
- */
-public class BillingManager {
-    private static final Log log = LogFactory.getLog(BillingManager.class);
-    private static BillingManager billingManager;
-    private BillingConfiguration billingConfiguration;
-    private DataAccessObject dataAccessObject;
-    private Map<String, BillingEngine> billingEngines = new HashMap<String, BillingEngine>();
-
-    public static BillingManager getInstance() throws BillingException {
-        if (billingManager == null) {
-            String msg = "Billing Manager is not initialized.";
-            log.error(msg);
-            throw new BillingException(msg);
-        }
-        return billingManager;
-    }
-
-    public static void destroyInstance() {
-        billingManager = null;
-    }
-
-    public BillingManager(BillingConfiguration billingConfiguration) throws BillingException {
-        if (billingManager != null) {
-            String msg = "Billing Manager should not be initialized twice";
-            log.error(msg);
-            throw new BillingException(msg);
-        }
-        
-        this.billingConfiguration = billingConfiguration;
-        this.dataAccessObject = new DataAccessObject(billingConfiguration.getDataSource());
-        //Create billing engine corresponds to given billingTaskConfigurations
-        Map<String, BillingTaskConfiguration> billingTaskConfigs =
-                billingConfiguration.getBillingTaskConfigs();
-        for (Map.Entry<String, BillingTaskConfiguration> entry : billingTaskConfigs.entrySet()) {
-            String billingTaskName = entry.getKey();
-            BillingTaskConfiguration billingTaskConfiguration = entry.getValue();
-            BillingEngine billingEngine =
-                    new BillingEngine(billingTaskConfiguration, dataAccessObject);
-            billingEngines.put(billingTaskName, billingEngine);
-        }
-        billingManager = this;
-    }
-
-    public BillingConfiguration getBillingConfiguration() {
-        return billingConfiguration;
-    }
-
-    public DataAccessObject getDataAccessObject() {
-        return dataAccessObject;
-    }
-
-    public BillingEngine getBillingEngine(String billingTaskName) {
-        return billingEngines.get(billingTaskName);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/BillingTenantMgtListenerImpl.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/BillingTenantMgtListenerImpl.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/BillingTenantMgtListenerImpl.java
deleted file mode 100644
index 403938f..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/BillingTenantMgtListenerImpl.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*
- *  Copyright (c) 2005-2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- *  WSO2 Inc. 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.
- *
- */
-
-package org.wso2.carbon.billing.core;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.wso2.carbon.billing.core.dataobjects.Customer;
-import org.wso2.carbon.billing.core.dataobjects.Item;
-import org.wso2.carbon.billing.core.dataobjects.Subscription;
-import org.wso2.carbon.billing.core.internal.Util;
-import org.wso2.carbon.stratos.common.beans.TenantInfoBean;
-import org.wso2.carbon.stratos.common.exception.StratosException;
-import org.wso2.carbon.stratos.common.internal.CloudCommonServiceComponent;
-import org.wso2.carbon.stratos.common.listeners.TenantMgtListener;
-import org.wso2.carbon.user.api.Tenant;
-import org.wso2.carbon.user.api.TenantManager;
-
-import java.util.Calendar;
-import java.util.Date;
-import java.util.List;
-
-
-public class BillingTenantMgtListenerImpl implements TenantMgtListener{
-
-    private static Log log = LogFactory.getLog(BillingTenantMgtListenerImpl.class);
-    /**
-     * Adds the subscription entry when the tenant is created
-     * @param tenantInfo Tenant information
-     * @throws StratosException if adding subscription failed
-     */
-    public void onTenantCreate(TenantInfoBean tenantInfo) throws StratosException {
-        Customer customer = new Customer();
-        customer.setName(tenantInfo.getTenantDomain());
-        customer.setEmail(tenantInfo.getEmail());
-        customer.setStartedDate(new Date(tenantInfo.getCreatedDate().getTimeInMillis()));
-        customer.setFullName(tenantInfo.getFirstname() + " " + tenantInfo.getLastname());
-
-        customer.setId(tenantInfo.getTenantId());
-        Subscription subscription = new Subscription();
-        subscription.setCustomer(customer);
-        subscription.setActive(false);
-        subscription.setActiveSince(Calendar.getInstance().getTime());
-        subscription.setItem(new Item());
-        subscription.setSubscriptionPlan(tenantInfo.getUsagePlan());
-        try {
-            Util.getDataAccessManager().addSubscription(subscription);
-        } catch (Exception e) {
-            String msg = "Could not add new subscription for tenant: " +tenantInfo.getTenantDomain();
-            log.error( msg + e.getMessage(), e);
-            throw new StratosException(msg, e);
-        }
-    }
-
-    public void onTenantUpdate(TenantInfoBean tenantInfo) throws StratosException {
-        try {
-            if (tenantInfo.getUsagePlan() == null) {
-                return;
-            }
-            Subscription currentSubscription = Util.getDataAccessManager().
-                    getActiveSubscriptionOfCustomer(tenantInfo.getTenantId());
-            if (currentSubscription != null && currentSubscription.getSubscriptionPlan() != null) {
-                if (!currentSubscription.getSubscriptionPlan().equals(tenantInfo.getUsagePlan())) {
-                    boolean updated = Util.getDataAccessManager().
-                            changeSubscription(tenantInfo.getTenantId(), tenantInfo.getUsagePlan());
-                    if (updated) {
-                        log.info("Usage plan was changed successfully from " + currentSubscription.getSubscriptionPlan() +
-                                " to " + tenantInfo.getUsagePlan());
-                    }
-                }
-            }else{
-                //tenant does not have an active subscription. First we have to check whether the tenant
-                //is active. If he is active only we will add a new usage plan. Otherwise it is useless
-                //to add a usage plan to an inactive tenant
-                TenantManager tenantManager = CloudCommonServiceComponent.getTenantManager();
-                Tenant tenant = tenantManager.getTenant(tenantInfo.getTenantId());
-                if(tenant.isActive()){
-                    //we add a new subscription
-                    Subscription subscription = new Subscription();
-                    subscription.setActive(true);
-                    subscription.setSubscriptionPlan(tenantInfo.getUsagePlan());
-                    subscription.setActiveSince(null);
-                    subscription.setActiveUntil(null);
-                    Customer customer = new Customer();
-                    customer.setName(tenantInfo.getTenantDomain());
-                    customer.setId(tenantInfo.getTenantId());
-                    subscription.setCustomer(customer);
-
-                    int subsId = Util.getDataAccessManager().addSubscription(subscription);
-                    if(subsId>0){
-                        log.info("Added a new " + subscription.getSubscriptionPlan() + " usage plan for the tenant " +
-                                tenantInfo.getTenantDomain());
-                    }
-                }
-            }
-        } catch (Exception e) {
-            String msg = "Error occurred while changing the subscription plan for tenant: " + tenantInfo.getTenantDomain();
-            log.error(msg, e);
-            throw new StratosException(msg, e);
-        }
-    }
-
-    public void onTenantRename(int tenantId, String oldDomainName, String newDomainName) throws StratosException {
-        //Nothing to be done
-    }
-
-    public void onTenantInitialActivation(int tenantId) throws StratosException {
-        onTenantActivation(tenantId);
-    }
-
-    public void onTenantActivation(int tenantId) throws StratosException {
-        //On tenant activation we need to activate the subscription
-
-        try {
-
-            Subscription subscription = Util.getDataAccessManager().getActiveSubscriptionOfCustomer(tenantId);
-
-            if (subscription != null) {
-                String msg = "Unable to activate the subscription for tenant: " + tenantId +
-                        ". An active subscription already exists";
-                log.info(msg);
-            } else {
-                List<Subscription> inactiveSubscriptions = Util.getDataAccessManager().getInactiveSubscriptionsOfCustomer(tenantId);
-                if (inactiveSubscriptions.size() == 1) {
-                    //This is the scenario where the tenant has registered, but not activated yet
-                    subscription = inactiveSubscriptions.get(0);
-                    boolean activated = Util.getDataAccessManager().activateSubscription(subscription.getId());
-                    if (activated) {
-                        log.info("Subscription was activated for tenant: " + tenantId);
-                    }
-                }else if(inactiveSubscriptions.size() > 1){
-                    //this is the scenario where the tenant has been deactivated by admin and
-                    //again activated. Here, I am adding a new active subscription which is similar to the
-                    //last existed one
-                    //inactiveSubscriptions.get(0) gives the latest inactive subscription
-                    Subscription subscriptionToAdd = inactiveSubscriptions.get(0);
-                    subscriptionToAdd.setActive(true);
-                    subscriptionToAdd.setActiveSince(null);
-                    subscriptionToAdd.setActiveUntil(null);
-
-                    int subsId = Util.getDataAccessManager().addSubscription(subscriptionToAdd);
-                    if(subsId>0){
-                        log.info("New subscription: " + subscriptionToAdd.getSubscriptionPlan() +
-                                " added and it was activated for tenant: " + tenantId);
-                    }
-                }else{
-                    //this means there are no subscriptions. Lets handle this later
-                }
-            }
-        } catch (Exception e) {
-            String msg = "Error occurred while activating the subscription for tenant: " +
-                    tenantId;
-            log.error(msg, e);
-            throw new StratosException(msg, e);
-        }
-    }
-
-    public void onTenantDeactivation(int tenantId) throws StratosException {
-        try{
-            Subscription currentActiveSubscription = Util.getDataAccessManager().getActiveSubscriptionOfCustomer(tenantId);
-            if(currentActiveSubscription==null){
-                String msg = "There is no active subscription to deactivate for tenant: " +
-                        tenantId + " on tenant deactivation";
-                log.info(msg);
-            }else {
-                boolean deactivated = Util.getDataAccessManager().deactivateActiveSubscription(tenantId);
-                if(deactivated){
-                    log.info("Subscription deactivated on tenant deactivation");
-                }else{
-                    log.info("Subscription was not deactivated on tenant deactivation");
-                }
-            }
-        } catch (Exception e){
-            String msg = "Error occurred while deactivating the active subscription for tenant: " + tenantId;
-            log.error(msg, e);
-            throw new StratosException(msg, e);
-        }
-    }
-
-    public void onSubscriptionPlanChange(int tenentId, String oldPlan, String newPlan) throws StratosException {
-        //To change body of implemented methods use File | Settings | File Templates.
-    }
-
-    public int getListenerOrder() {
-        return 0;  //To change body of implemented methods use File | Settings | File Templates.
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/DataAccessManager.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/DataAccessManager.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/DataAccessManager.java
deleted file mode 100644
index 89cce4c..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/DataAccessManager.java
+++ /dev/null
@@ -1,244 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.wso2.carbon.billing.core.dataobjects.Customer;
-import org.wso2.carbon.billing.core.dataobjects.Subscription;
-import org.wso2.carbon.billing.core.internal.Util;
-import org.wso2.carbon.billing.core.jdbc.DataAccessObject;
-import org.wso2.carbon.stratos.common.exception.StratosException;
-import org.wso2.carbon.user.api.Tenant;
-import org.wso2.carbon.user.api.TenantManager;
-
-import javax.sql.DataSource;
-import java.util.ArrayList;
-import java.util.List;
-
-
-public class DataAccessManager {
-
-    private static Log log = LogFactory.getLog(DataAccessManager.class);
-    private DataAccessObject dataAccessObject = null;
-
-    public DataAccessManager(DataSource dataSource) {
-        this.dataAccessObject = new DataAccessObject(dataSource);
-    }
-    
-    public DataAccessManager(DataAccessObject dao){
-        this.dataAccessObject = dao;
-    }
-
-    public void beginTransaction() throws BillingException {
-        dataAccessObject.beginTransaction();
-    }
-
-    public void commitTransaction() throws BillingException {
-        dataAccessObject.commitTransaction();
-    }
-
-    public void rollbackTransaction() throws BillingException {
-        dataAccessObject.rollbackTransaction();
-    }
-
-    public int addSubscription(Subscription subscription) throws BillingException {
-        int subscriptionId = 0;
-        try {
-            beginTransaction();
-            subscriptionId = dataAccessObject.addSubscription(subscription,
-                                subscription.getSubscriptionPlan());
-            commitTransaction();
-        } catch(Exception e){
-            String msg = "Error occurred while adding subscription: " + subscription.getSubscriptionPlan()+
-                            " for the customer " + subscription.getCustomer().getName() + " " + e.getMessage() ;
-            log.error(msg, e);
-            rollbackTransaction();
-            throw new BillingException(msg, e);
-        }
-        return subscriptionId;
-    }
-
-    public void deleteBillingData(int tenantId) throws BillingException {
-        try {
-            beginTransaction();
-            dataAccessObject.deleteBillingData(tenantId);
-            commitTransaction();
-        } catch (Exception e) {
-            rollbackTransaction();
-            String msg = "Error occurred while deleting subscription for tenant id: " + tenantId ;
-            log.error(msg, e);
-            throw new BillingException(msg, e);
-        }
-    }
-
-    public List<Customer> getCustomersWithName(String customerName) throws BillingException {
-        TenantManager tenantManager = Util.getRealmService().getTenantManager();
-        List<Customer> customers = new ArrayList<Customer>();
-        try {
-            int tenantId = tenantManager.getTenantId(customerName);
-            Tenant tenant = tenantManager.getTenant(tenantId);
-            if (tenant != null) {
-                Customer customer = new Customer();
-                customer.setId(tenant.getId());
-                customer.setName(tenant.getDomain());
-                customer.setStartedDate(tenant.getCreatedDate());
-                customer.setEmail(tenant.getEmail());
-                //customer.setAddress();
-                customers.add(customer);
-            }
-        } catch (Exception e) {
-            String msg = "Failed to get customers for customers: " + customerName + ".";
-            log.error(msg, e);
-            throw new BillingException(msg, e);
-        }
-
-        return customers;
-    }
-
-    public Subscription getSubscription(int subscriptionId) throws BillingException {
-        Subscription subscription = null;
-        try {
-            beginTransaction();
-            subscription = dataAccessObject.getSubscription(subscriptionId);
-            commitTransaction();
-        } catch(Exception e){
-            String msg = "Error occurred while getting subscription with id: " + subscriptionId +
-                            " " + e.getMessage();
-            log.error(msg, e);
-            rollbackTransaction();
-            throw new BillingException(msg, e);
-        }
-        return subscription;
-    }
-
-    public Subscription getActiveSubscriptionOfCustomer(int customerId) throws BillingException {
-        Subscription subscription;
-        try {
-            beginTransaction();
-            subscription = dataAccessObject.getActiveSubscriptionOfCustomer(customerId);
-            commitTransaction();
-        } catch(Exception e){
-            String msg = "Error occurred while getting active subscription for customer: "
-                            + customerId + " " + e.getMessage();
-            log.error(msg, e);
-            rollbackTransaction();
-            throw new BillingException(msg, e);
-        }
-        return subscription;
-    }
-
-    public int getItemIdWithName(String name, int parentId) throws BillingException {
-        int itemId;
-        try {
-            beginTransaction();
-            itemId = dataAccessObject.getItemId(name, parentId);
-            commitTransaction();
-        } catch(Exception e){
-            String msg = "Error occurred while getting item id for item name: " + name +
-                            " " + e.getMessage();
-            log.error(msg, e);
-            rollbackTransaction();
-            throw new BillingException(msg, e);
-        }
-        return itemId;
-    }
-
-    public boolean changeSubscription(int customerId, String subscriptionPlan) throws BillingException {
-        boolean changed = false;
-        String oldSubscriptionPlan = null;
-
-        try {
-            beginTransaction();
-            Subscription oldSubscription = getActiveSubscriptionOfCustomer(customerId);
-            if(oldSubscription!=null){
-                oldSubscriptionPlan = oldSubscription.getSubscriptionPlan();
-            }
-            changed = dataAccessObject.changeSubscription(customerId, subscriptionPlan);
-            commitTransaction();
-        } catch(Exception e){
-            String msg = "Error occurred while changing subscription to: " + subscriptionPlan +
-                            " for customer: " + customerId + " " + e.getMessage();
-            log.error(msg, e);
-            rollbackTransaction();
-            throw new BillingException(msg, e);
-        }
-
-        try {
-            // Notify Listeners about the subscription change
-            Util.alertTenantSubscriptionPlanChange(
-                    customerId, oldSubscriptionPlan, subscriptionPlan);
-        } catch (StratosException e) {
-            log.error(e.getMessage(), e);
-            throw new BillingException(e.getMessage(), e);
-        }
-
-        return changed;
-    }
-
-    public List<Subscription> getInactiveSubscriptionsOfCustomer(int customerId) throws BillingException {
-        List<Subscription> subscriptions;
-        try {
-            beginTransaction();
-            subscriptions = dataAccessObject.getInactiveSubscriptionsOfCustomer(customerId);
-            commitTransaction();
-        } catch(Exception e){
-            String msg = "Error occurred while getting inactive subscriptions of customer: " +
-                            customerId + " " + e.getMessage();
-            log.error(msg, e);
-            rollbackTransaction();
-            throw new BillingException(msg, e);
-        }
-        return subscriptions;
-
-    }
-
-    public boolean activateSubscription(int subscriptionId) throws BillingException {
-        boolean activated = false;
-        try {
-            beginTransaction();
-            activated = dataAccessObject.activateSubscription(subscriptionId);
-            commitTransaction();
-        } catch(Exception e){
-            String msg = "Error occurred while activating subscription with id: " + subscriptionId +
-                            " " + e.getMessage();
-            log.error(msg, e);
-            rollbackTransaction();
-            throw new BillingException(msg, e);
-        }
-        return activated;
-    }
-
-    public boolean deactivateActiveSubscription(int tenantId) throws BillingException {
-        boolean deactivated = false;
-        try{
-            beginTransaction();
-            deactivated = dataAccessObject.deactivateCurrentSubscriptoin(tenantId);
-            commitTransaction();
-        }catch(Exception e){
-            rollbackTransaction();
-            String msg = "Error occurred while deactivating the active subscription of customer: " +
-                            tenantId;
-            log.error(msg, e);
-            throw new BillingException(msg, e);
-        }
-
-        return deactivated;
-    }
-
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/beans/OutstandingBalanceInfoBean.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/beans/OutstandingBalanceInfoBean.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/beans/OutstandingBalanceInfoBean.java
deleted file mode 100644
index 04260fd..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/beans/OutstandingBalanceInfoBean.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core.beans;
-
-import java.util.Date;
-
-/**
- * This class holds the data to be shown in the invoice summary page of all
- * tenants
- */
-public class OutstandingBalanceInfoBean {
-
-    private int invoiceId;
-    private String customerName;
-    private String subscription;
-    private String carriedForward;
-    private Date lastPaymentDate;
-    private Date lastInvoiceDate;
-    private String lastPaidAmount;
-
-    public int getInvoiceId() {
-        return invoiceId;
-    }
-
-    public void setInvoiceId(int invoiceId) {
-        this.invoiceId = invoiceId;
-    }
-
-    public String getCustomerName() {
-        return customerName;
-    }
-
-    public void setCustomerName(String customerName) {
-        this.customerName = customerName;
-    }
-
-    public String getSubscription() {
-        return subscription;
-    }
-
-    public void setSubscription(String subscription) {
-        this.subscription = subscription;
-    }
-
-    public String getCarriedForward() {
-        return carriedForward;
-    }
-
-    public void setCarriedForward(String carriedForward) {
-        this.carriedForward = carriedForward;
-    }
-
-    public Date getLastPaymentDate() {
-        return lastPaymentDate;
-    }
-
-    public void setLastPaymentDate(Date lastPaymentDate) {
-        this.lastPaymentDate = lastPaymentDate;
-    }
-
-    public String getLastPaidAmount() {
-        return lastPaidAmount;
-    }
-
-    public void setLastPaidAmount(String lastPaidAmount) {
-        this.lastPaidAmount = lastPaidAmount;
-    }
-
-    public Date getLastInvoiceDate() {
-        return lastInvoiceDate;
-    }
-
-    public void setLastInvoiceDate(Date lastInvoiceDate) {
-        this.lastInvoiceDate = lastInvoiceDate;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/beans/PaginatedBalanceInfoBean.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/beans/PaginatedBalanceInfoBean.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/beans/PaginatedBalanceInfoBean.java
deleted file mode 100644
index 68e968e..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/beans/PaginatedBalanceInfoBean.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
-*  Copyright (c) 2005-2010, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
-*
-*  WSO2 Inc. 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.
-*/
-package org.wso2.carbon.billing.core.beans;
-
-import org.wso2.carbon.utils.Pageable;
-
-import java.util.List;
-
-/**
- * Class used paginating the invoice summaries of all tenants
- */
-public class PaginatedBalanceInfoBean implements Pageable {
-
-    private OutstandingBalanceInfoBean[] balanceInfoBeans;
-    private int numberOfPages;
-
-    public OutstandingBalanceInfoBean[] getBalanceInfoBeans() {
-        return balanceInfoBeans;
-    }
-
-    public void setBalanceInfoBeans(OutstandingBalanceInfoBean[] balanceInfoBeans) {
-        this.balanceInfoBeans = balanceInfoBeans;
-    }
-
-    public int getNumberOfPages() {
-        return numberOfPages;
-    }
-
-    public void setNumberOfPages(int numberOfPages) {
-        this.numberOfPages = numberOfPages;
-    }
-
-    public <T> void set(List<T> items) {
-        this.balanceInfoBeans =
-                items.toArray(new OutstandingBalanceInfoBean[items.size()]);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/conf/BillingConfiguration.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/conf/BillingConfiguration.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/conf/BillingConfiguration.java
deleted file mode 100644
index 0027f16..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/conf/BillingConfiguration.java
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core.conf;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.impl.builder.StAXOMBuilder;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.wso2.carbon.billing.core.BillingConstants;
-import org.wso2.carbon.billing.core.BillingException;
-import org.wso2.carbon.billing.core.internal.Util;
-import org.wso2.carbon.ndatasource.common.DataSourceException;
-
-import javax.sql.DataSource;
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.InputStream;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-/**
- * This class reads the billing-config.xml file and
- * keeps the billing task configurations in a map.
- * There are two configurations, one for scheduled bill generation
- * and the other for on-demand bill generation
- */
-public class BillingConfiguration {
-    private static final Log log = LogFactory.getLog(BillingConfiguration.class);
-    DataSource dataSource;
-    Map<String, BillingTaskConfiguration> billingTaskConfigs = new HashMap<String, BillingTaskConfiguration>();
-
-    public BillingConfiguration(String billingConfigFile) throws BillingException {
-        try {
-            dataSource = (DataSource) Util.getDataSourceService().getDataSource(BillingConstants.WSO2_BILLING_DS).getDSObject();
-            OMElement billingConfig = buildOMElement(new FileInputStream(billingConfigFile));
-            deserialize(billingConfig);
-        } catch (FileNotFoundException e) {
-            String msg = "Unable to find the file responsible for billing task configs: "
-                            + billingConfigFile;
-            log.error(msg, e);
-            throw new BillingException(msg, e);
-        } catch (DataSourceException e) {
-            String msg = "Error retrieving Billing datasource from master-datasources.xml configuration.";
-            log.error(msg, e);
-            throw new BillingException(msg, e);
-        }
-    }
-
-    private OMElement buildOMElement(InputStream inputStream) throws BillingException {
-        XMLStreamReader parser;
-        try {
-            parser = XMLInputFactory.newInstance().createXMLStreamReader(inputStream);
-        } catch (XMLStreamException e) {
-            String msg = "Error in initializing the parser to build the OMElement.";
-            log.error(msg, e);
-            throw new BillingException(msg, e);
-        }
-
-        StAXOMBuilder builder = new StAXOMBuilder(parser);
-        return builder.getDocumentElement();
-    }
-    
-    /*
-       Deserialize the following
-       <billingConfig xmlns="http://wso2.com/carbon/multitenancy/billing/config">
-           <dbConfig>
-                ...
-           </dbConfig>
-           <tasks>
-                <task id="multitenancyScheduledTask">
-                    ...
-                </task>
-                <task id="multitenancyViewingTask">
-                    ...
-                </task>
-            </tasks>
-        </billingConfig>
-     */
-    private void deserialize(OMElement billingConfigEle) throws BillingException {
-        Iterator billingConfigChildIt = billingConfigEle.getChildElements();
-        
-        while (billingConfigChildIt.hasNext()) {
-            OMElement billingConfigChildEle = (OMElement) billingConfigChildIt.next();
-            
-            if (new QName(BillingConstants.CONFIG_NS, BillingConstants.TASKS,
-                    BillingConstants.NS_PREFIX).equals(billingConfigChildEle.getQName())) {
-                //element is "tasks"
-                Iterator taskConfigChildIt = billingConfigChildEle.getChildElements();
-                while (taskConfigChildIt.hasNext()) {
-                    OMElement taskConfigEle = (OMElement) taskConfigChildIt.next();
-                    String id = taskConfigEle.getAttributeValue(new QName(BillingConstants.ATTR_ID));
-                    BillingTaskConfiguration taskConfig =
-                            new BillingTaskConfiguration(id, taskConfigEle);
-                    billingTaskConfigs.put(id, taskConfig);
-                }
-            } else {
-                String msg = "Unknown element in Billing Configuration: " +
-                                billingConfigChildEle.getQName().getLocalPart();
-                log.error(msg);
-                throw new BillingException(msg);
-            }
-        }
-    }
-
-    /*
-     * Deserialise dbConfigElement (Given below) and initialize data source
-        <dbConfig>
-            <url>jdbc:mysql://localhost:3306/billing</url>
-            <userName>billing</userName>
-            <password>billing</password>
-            <driverName>com.mysql.jdbc.Driver</driverName>
-            <maxActive>80</maxActive>
-            <maxWait>60000</maxWait>
-            <minIdle>5</minIdle>
-            <validationQuery>SELECT 1</validationQuery>
-        </dbConfig>
-     */
-    /*private void initDataSource(OMElement dbConfigEle) throws BillingException {
-        // initializing the data source and load the database configurations
-        Iterator dbConfigChildIt = dbConfigEle.getChildElements();
-        dataSource = new BasicDataSource();
-        
-        while (dbConfigChildIt.hasNext()) {
-            
-            OMElement dbConfigChildEle = (OMElement) dbConfigChildIt.next();
-            if (new QName(BillingConstants.CONFIG_NS, BillingConstants.DBCONFIG_URL,
-                    BillingConstants.NS_PREFIX).equals(dbConfigChildEle.getQName())) {
-                dataSource.setUrl(dbConfigChildEle.getText());
-            } else if (new QName(BillingConstants.CONFIG_NS, BillingConstants.DBCONFIG_USER_NAME,
-                    BillingConstants.NS_PREFIX).equals(dbConfigChildEle.getQName())) {
-                dataSource.setUsername(dbConfigChildEle.getText());
-            } else if (new QName(BillingConstants.CONFIG_NS, BillingConstants.DBCONFIG_PASSWORD,
-                    BillingConstants.NS_PREFIX).equals(dbConfigChildEle.getQName())) {
-                dataSource.setPassword(dbConfigChildEle.getText());
-            } else if (new QName(BillingConstants.CONFIG_NS, BillingConstants.DBCONFIG_DRIVER_NAME,
-                    BillingConstants.NS_PREFIX).equals(dbConfigChildEle.getQName())) {
-                dataSource.setDriverClassName(dbConfigChildEle.getText());
-            } else if (new QName(BillingConstants.CONFIG_NS, BillingConstants.DBCONFIG_MAX_ACTIVE,
-                    BillingConstants.NS_PREFIX).equals(dbConfigChildEle.getQName())) {
-                dataSource.setMaxActive(Integer.parseInt(dbConfigChildEle.getText()));
-            } else if (new QName(BillingConstants.CONFIG_NS, BillingConstants.DBCONFIG_MAX_WAIT,
-                    BillingConstants.NS_PREFIX).equals(dbConfigChildEle.getQName())) {
-                dataSource.setMaxWait(Integer.parseInt(dbConfigChildEle.getText()));
-            } else if (new QName(BillingConstants.CONFIG_NS, BillingConstants.DBCONFIG_MIN_IDLE,
-                    BillingConstants.NS_PREFIX).equals(dbConfigChildEle.getQName())) {
-                dataSource.setMinIdle(Integer.parseInt(dbConfigChildEle.getText()));
-            } else if (new QName(BillingConstants.CONFIG_NS, 
-                    BillingConstants.DBCONFIG_VALIDATION_QUERY, BillingConstants.NS_PREFIX)
-                    .equals(dbConfigChildEle.getQName())) {
-                dataSource.setValidationQuery(dbConfigChildEle.getText());
-            } else {
-                String msg = "Unknown element in DBConfig of Billing Configuration: " +
-                                dbConfigChildEle.getQName().getLocalPart();
-                log.error(msg);
-                throw new BillingException(msg);
-            }
-        }
-    }*/
-
-    public Map<String, BillingTaskConfiguration> getBillingTaskConfigs() {
-        return billingTaskConfigs;
-    }
-
-    public DataSource getDataSource() {
-        return dataSource;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/conf/BillingTaskConfiguration.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/conf/BillingTaskConfiguration.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/conf/BillingTaskConfiguration.java
deleted file mode 100644
index 5530ed1..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/conf/BillingTaskConfiguration.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core.conf;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.wso2.carbon.billing.core.BillingConstants;
-import org.wso2.carbon.billing.core.BillingException;
-import org.wso2.carbon.billing.core.BillingHandler;
-import org.wso2.carbon.billing.core.scheduler.ScheduleHelper;
-
-import javax.xml.namespace.QName;
-import java.util.*;
-
-public class BillingTaskConfiguration {
-    private static final Log log = LogFactory.getLog(BillingTaskConfiguration.class);
-
-    private String id;
-    private ScheduleHelper scheduleHelper = null;
-    private Map<String, String> schedulerHelperArgs;
-    private String schedulerServiceName;
-
-    private List<BillingHandler> billingHandlers = new ArrayList<BillingHandler>();
-    private List<HandlerConfigBean> handlerArgs = new ArrayList<HandlerConfigBean>(); //key - handler service name
-    private static Map<String, ScheduleHelper> schedulerServices =
-            new HashMap<String, ScheduleHelper>(); 
-    private static Map<String, BillingHandler> handlerServices =
-            new HashMap<String, BillingHandler>();
-
-    private class HandlerConfigBean {
-        public String name;
-        public boolean isServiceType;
-        public Map<String, String> constructorArgs;
-
-        public HandlerConfigBean(String name, boolean isServiceType, Map<String, String> constructorArgs){
-            this.name = name;
-            this.isServiceType = isServiceType;
-            this.constructorArgs = constructorArgs;
-        }
-    }
-
-    public BillingTaskConfiguration(String id, OMElement billingConfigEle) throws BillingException {
-        this.id = id;
-        deserialize(billingConfigEle);
-    }
-
-    /*
-     *  Deserialize following and creates tasks
-        <task id="multitenancyScheduledTask">
-            <subscriptionFilter>multitenancy</subscriptionFilter>
-            <schedule scheduleHelperClass="package.ClassName">
-                ...
-            </schedule>
-            <handlers>
-                ...
-            </handlers>
-        </task>
-     */
-    private void deserialize(OMElement taskConfigEle) throws BillingException {
-        Iterator billingConfigChildIt = taskConfigEle.getChildElements();
-        
-        while (billingConfigChildIt.hasNext()) {
-            OMElement childEle = (OMElement) billingConfigChildIt.next();
-            if (new QName(BillingConstants.CONFIG_NS, BillingConstants.SCHEDULE_CONF_KEY,
-                    BillingConstants.NS_PREFIX).equals(childEle.getQName())) {
-                deserializeSchedule(childEle);
-            } else if (new QName(BillingConstants.CONFIG_NS, BillingConstants.HANDLERS,
-                    BillingConstants.NS_PREFIX).equals(childEle.getQName())) {
-                deserializeHandlers(childEle);
-            } else {
-                String msg = "Unknown element in task configuration for task " + id +
-                                ": " + childEle.getQName().getLocalPart();
-                log.error(msg);
-                throw new BillingException(msg);
-            }
-        }
-    }
-
-    /*
-        <handlers>
-            <handler service="serviceName">
-            </handler>
-            <handler class="org.wso2.carbon.billing.core.handlers.EmailSendingHandler">
-                <parameter name="file">email-billing-notifications.xml</parameter>
-            </handler>
-        </handlers>
-     */
-    private void deserializeHandlers(OMElement handlersEle) throws BillingException {
-        // iterate through each billingHandlers
-        Iterator handlersChildIt = handlersEle.getChildElements();
-        
-        while (handlersChildIt.hasNext()) {
-            OMElement handlerEle = (OMElement) handlersChildIt.next();
-            if (!(new QName(BillingConstants.CONFIG_NS, BillingConstants.HANDLER,
-                    BillingConstants.NS_PREFIX).equals(handlerEle.getQName()))) {
-                String msg = "Unknown element in handler configuration for task " + id +
-                                ": " + handlerEle.getQName().getLocalPart();
-                log.error(msg);
-                throw new BillingException(msg);
-            }
-
-            // get the parameters for handler
-            Iterator handlerParametersIt = handlerEle.getChildElements();
-            Map<String, String> constructorArgs = extractConstructorArgs(handlerParametersIt);
-            String handlerClassName =
-                    handlerEle.getAttributeValue(new QName(BillingConstants.HANDLER_CLASS_ATTR));
-            if (handlerClassName == null) {
-                // className is not given. So, it uses a handlerService
-                String handlerServiceName = handlerEle.getAttributeValue(
-                        new QName(BillingConstants.HANDLER_SERVICE_ATTR));
-                HandlerConfigBean bean = new HandlerConfigBean(handlerServiceName, true, constructorArgs);
-                handlerArgs.add(bean);
-            } else {
-                HandlerConfigBean bean = new HandlerConfigBean(handlerClassName, false, constructorArgs);
-                handlerArgs.add(bean);
-            }
-        }
-    }
-
-    /* 
-     * Deserialize following and creates scheduleHelper
-        <schedule scheduleHelperClass="package.ClassName">
-            <parameter name="dayToTriggerOn">1</parameter>
-            <parameter name="hourToTriggerOn">0</parameter>
-            <parameter name="timeZone">GMT-8:00</parameter>
-        </schedule>
-     */
-    private void deserializeSchedule(OMElement scheduleEle) throws BillingException {
-        Iterator scheduleHelperConfigChildIt = scheduleEle.getChildElements();
-        Map<String, String> constructorArgs = extractConstructorArgs(scheduleHelperConfigChildIt);
-        
-        // get the scheduleHelper class name
-        String className = scheduleEle.getAttributeValue(
-                new QName(BillingConstants.TRIGGER_CALCULATOR_CLASS_ATTR));
-        
-        if (className == null) {
-            //className is not given; it is using scheduler service
-            schedulerServiceName = scheduleEle.getAttributeValue(
-                    new QName(BillingConstants.TRIGGER_CALCULATOR_SERVICE_ATTR));
-            schedulerHelperArgs = constructorArgs;
-        } else {
-            //className is given; Construct the object
-            scheduleHelper = (ScheduleHelper) constructObject(className);
-            scheduleHelper.init(constructorArgs);
-        }
-    }
-
-    public ScheduleHelper getScheduleHelper() throws BillingException {
-        if (scheduleHelper == null && schedulerServiceName != null) {
-            scheduleHelper = schedulerServices.get(schedulerServiceName);
-            if (scheduleHelper == null) {
-                String msg = "The scheduler helper service: " + schedulerServiceName +
-                                " is not loaded.";
-                log.error(msg);
-                throw new BillingException(msg);
-            }
-            scheduleHelper.init(schedulerHelperArgs);
-        }
-        return scheduleHelper;
-    }
-
-    public List<BillingHandler> getBillingHandlers() throws BillingException {
-        // We have to combine the handlers and handlerServices as a single list and return. When
-        // creating and initializing handerServices, remove them from the handelerArgs so that they
-        // will be included only once
-        if(!handlerArgs.isEmpty()){
-            for(HandlerConfigBean bean : handlerArgs){
-                if(bean.isServiceType){
-                    BillingHandler handlerService = handlerServices.get(bean.name);
-                    if (handlerService == null) {
-                        billingHandlers = null;
-                        String msg = "The handler service: " + bean.name + " is not loaded.";
-                        log.error(msg);
-                        throw new BillingException(msg);
-                    }
-                    handlerService.init(bean.constructorArgs);
-                    billingHandlers.add(handlerService);
-
-                } else {
-                    BillingHandler handler = (BillingHandler) constructObject(bean.name);
-                    handler.init(bean.constructorArgs);
-                    billingHandlers.add(handler);
-                }
-            }
-
-            //all the billing handler services are initialized properly, can clear handlerArgs
-            handlerArgs.clear();
-        }
-        return billingHandlers;
-    }
-
-    private static Object constructObject(String className) throws BillingException {
-        try {
-            return Class.forName(className).newInstance();
-        } catch (ClassNotFoundException e) {
-            String msg = "The class: " + className + " is not in the classpath.";
-            log.error(msg, e);
-            throw new BillingException(msg, e);
-        } catch (Exception e) {
-            String msg = "Error in initializing the object for " + className + ".";
-            log.error(msg);
-            throw new BillingException(msg, e);
-        }
-    }
-
-    private static Map<String, String> extractConstructorArgs(Iterator parameterIt) {
-        Map<String, String> constructorArgs = new HashMap<String, String>();
-        
-        while (parameterIt.hasNext()) {
-            OMElement paramEle = (OMElement) parameterIt.next();
-            if (!new QName(BillingConstants.CONFIG_NS, BillingConstants.SCHEDULE_CONF_PARAM_KEY,
-                    BillingConstants.NS_PREFIX).equals(paramEle.getQName())) {
-                continue;
-            }
-            
-            String paramName = paramEle.getAttributeValue(
-                    new QName(BillingConstants.SCHEDULE_CONF_PARAM_NAME_KEY));
-            String paramValue = paramEle.getText();
-            constructorArgs.put(paramName, paramValue);
-        }
-        return constructorArgs;
-    }
-
-    public String getId() {
-        return id;
-    }
-
-    // the following two methods will be called when the services are available for the schedule
-    // helper and the billing handlers
-    public static void addScheduleHelper(ScheduleHelper scheduleHelper) {
-        schedulerServices.put(scheduleHelper.getClass().getName(), scheduleHelper);
-    }
-
-    public static void addBillingHandler(BillingHandler billingHandler) {
-        handlerServices.put(billingHandler.getClass().getName(), billingHandler);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Cash.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Cash.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Cash.java
deleted file mode 100644
index e9d760a..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Cash.java
+++ /dev/null
@@ -1,304 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core.dataobjects;
-
-import org.wso2.carbon.billing.core.BillingException;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import java.util.regex.Pattern;
-
-
-public class Cash {
-    private static final Log log = LogFactory.getLog(Cash.class);
-    public static final String CURRENCY_USD = "$";
-    public static final String DEFAULT_CURRENCY = CURRENCY_USD;
-
-    public enum Sign {
-        POSITIVE, NEGATIVE
-    };
-
-    String currency;
-    int wholeNumber;
-    int decimalNumber;
-    Sign sign = Sign.POSITIVE; // true for positive
-
-    private static final String notNumbersRegEx = "[^0-9]";
-    private static final Pattern notNumbersPattern = Pattern.compile(notNumbersRegEx);
-
-    public Cash() {
-        // the default constructor for Cash
-    }
-
-    public Cash(Cash copyFrom) {
-        this.currency = copyFrom.getCurrency();
-        this.wholeNumber = copyFrom.getWholeNumber();
-        this.decimalNumber = copyFrom.getDecimalNumber();
-        this.sign = copyFrom.getSign();
-    }
-
-    public Cash(String cashString) throws BillingException {
-        if (cashString == null) {
-            cashString = "$0";
-        }
-        if (cashString.startsWith(CURRENCY_USD)) {
-            cashString = cashString.substring(CURRENCY_USD.length());
-            currency = CURRENCY_USD;
-        }
-        // possible other currencies
-        else {
-            currency = DEFAULT_CURRENCY;
-        }
-
-        if (cashString.startsWith("-")) {
-            sign = Sign.NEGATIVE;
-            cashString = cashString.substring(1);
-        } else if (cashString.startsWith("+")) {
-            sign = Sign.POSITIVE;
-            cashString = cashString.substring(1);
-        } else {
-            sign = Sign.POSITIVE;
-        }
-
-        if (cashString.contains(".")) {
-            String wholeNumberStr = cashString.substring(0, cashString.indexOf("."));
-            if (wholeNumberStr.trim().equals("")) {
-                String msg = "Whole number can not be empty";
-                throw new BillingException(msg);
-            }
-            if (notNumbersPattern.matcher(wholeNumberStr).find()) {
-                String msg = "The whole number expected to have only 0-9 characters.: " +
-                                wholeNumberStr + " is not a number. ";
-                throw new BillingException(msg);
-            }
-            
-            String decimalNumberStr = cashString.substring(cashString.indexOf(".") + 1);
-            if (notNumbersPattern.matcher(decimalNumberStr).find()) {
-                String msg = "The decimal number expected to have only 0-9 characters.: " +
-                                decimalNumberStr + " is not a number. ";
-                throw new BillingException(msg);
-            }
-            if (decimalNumberStr.length() == 0) {
-                String msg = "String after the decimal point is zero.";
-                throw new BillingException(msg);
-            } else if (decimalNumberStr.length() > 2) {
-                String msg = "String after the decimal point is greater than 2";
-                throw new BillingException(msg);
-            } else if (decimalNumberStr.length() == 1) {
-                decimalNumberStr += "0";
-            }
-            
-            wholeNumber = Integer.parseInt(wholeNumberStr);
-            decimalNumber = Integer.parseInt(decimalNumberStr);
-            
-        } else {
-            if (notNumbersPattern.matcher(cashString).find()) {
-                String msg = "The cash string to have only 0-9 characters.: " + cashString +
-                                " is not a number. ";
-                throw new BillingException(msg);
-            }
-            
-            wholeNumber = Integer.parseInt(cashString);
-            decimalNumber = 0;
-        }
-    }
-
-    public Sign getSign() {
-        return sign;
-    }
-
-    public void setSign(Sign sign) {
-        this.sign = sign;
-    }
-
-    public String getCurrency() {
-        return currency;
-    }
-
-    public void setCurrency(String currency) {
-        this.currency = currency;
-    }
-
-    public int getWholeNumber() {
-        return wholeNumber;
-    }
-
-    public void setWholeNumber(int wholeNumber) {
-        this.wholeNumber = wholeNumber;
-    }
-
-    public int getDecimalNumber() {
-        return decimalNumber;
-    }
-
-    public void setDecimalNumber(int decimalNumber) {
-        this.decimalNumber = decimalNumber;
-    }
-
-    public String serializeToString() {
-        String str = currency;
-        if (sign == Sign.NEGATIVE) {
-            str += "-";
-        }
-        str += wholeNumber + ".";
-        if (decimalNumber < 10) {
-            str += "0" + decimalNumber;
-        } else {
-            str += decimalNumber;
-        }
-        return str;
-    }
-
-    @Override
-    public String toString() {
-        return serializeToString();
-    }
-
-    public static Cash add(Cash a, Cash b) throws BillingException {
-        if (!a.getCurrency().equals(b.getCurrency())) {
-            // we still not support this.
-            String msg = "Can not add in-similar currencies: " + a.getCurrency() + "!=" +
-                            b.getCurrency() + ".";
-            log.error(msg);
-            throw new BillingException(msg);
-        }
-        
-        if (a.getSign() == Sign.POSITIVE && b.getSign() == Sign.NEGATIVE) {
-            Cash b2 = new Cash(b);
-            b2.setSign(Sign.POSITIVE);
-            return subtract(a, b2);
-        }
-        
-        if (a.getSign() == Sign.NEGATIVE && b.getSign() == Sign.POSITIVE) {
-            Cash a2 = new Cash(a);
-            a2.setSign(Sign.POSITIVE);
-            return subtract(b, a2);
-        }
-        
-        if (a.getSign() == Sign.NEGATIVE && b.getSign() == Sign.NEGATIVE) {
-            Cash a2 = new Cash(a);
-            Cash b2 = new Cash(b);
-            a2.setSign(Sign.POSITIVE);
-            b2.setSign(Sign.POSITIVE);
-            Cash c2 = add(a2, b2);
-            c2.setSign(Sign.NEGATIVE);
-            return c2;
-        }
-        
-        int decimalSum = a.getDecimalNumber() + b.getDecimalNumber();
-        int wholeSum = a.getWholeNumber() + b.getWholeNumber();
-
-        Cash cash = new Cash();
-        cash.setCurrency(a.getCurrency());
-        if (decimalSum >= 100) {
-            decimalSum -= 100;
-            wholeSum += 1;
-        }
-        cash.setDecimalNumber(decimalSum);
-        cash.setWholeNumber(wholeSum);
-        cash.setSign(Sign.POSITIVE);
-        return cash;
-    }
-
-    public static Cash subtract(Cash a, Cash b) throws BillingException {
-        if (!a.getCurrency().equals(b.getCurrency())) {
-            // we still not support this.
-            String msg = "Can not add in-similar currencies: " + a.getCurrency() + "!=" +
-                            b.getCurrency() + ".";
-            log.error(msg);
-            throw new BillingException(msg);
-        }
-        
-        if (a.getSign() == Sign.POSITIVE && b.getSign() == Sign.NEGATIVE) {
-            Cash b2 = new Cash(b);
-            b2.setSign(Sign.POSITIVE);
-            return add(a, b2);
-        }
-        
-        if (a.getSign() == Sign.NEGATIVE && b.getSign() == Sign.POSITIVE) {
-            Cash a2 = new Cash(a);
-            a2.setSign(Sign.POSITIVE);
-            Cash c2 = add(b, a2);
-            c2.setSign(Sign.NEGATIVE);
-            return c2;
-        }
-        
-        if (a.getSign() == Sign.NEGATIVE && b.getSign() == Sign.NEGATIVE) {
-            Cash a2 = new Cash(a);
-            Cash b2 = new Cash(b);
-            a2.setSign(Sign.POSITIVE);
-            b2.setSign(Sign.POSITIVE);
-            Cash c2 = subtract(a2, b2);
-            if (c2.getSign() == Sign.NEGATIVE) {
-                c2.setSign(Sign.POSITIVE);
-            } else {
-                c2.setSign(Sign.NEGATIVE);
-            }
-            return c2;
-        }
-        
-        int decimalSum = a.getDecimalNumber() - b.getDecimalNumber();
-        int wholeSum = a.getWholeNumber() - b.getWholeNumber();
-
-        if (wholeSum < 0 || (decimalSum < 0 && wholeSum == 0)) {
-            // then it is negative value
-            Cash c = subtract(b, a);
-            c.setSign(Sign.NEGATIVE);
-            return c;
-        }
-
-        Cash cash = new Cash();
-        cash.setCurrency(a.getCurrency());
-        if (decimalSum < 0) {
-            decimalSum += 100;
-            wholeSum -= 1;
-        }
-
-        cash.setDecimalNumber(decimalSum);
-        cash.setWholeNumber(wholeSum);
-        return cash;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        if (!(o instanceof Cash)) {
-            return false;
-        }
-        Cash otherCash = (Cash) o;
-        return otherCash.serializeToString().equals(this.serializeToString());
-    }
-
-    @Override
-    public int hashCode() {
-        return serializeToString().hashCode();
-    }
-
-    public Cash multiply(double multiplyBy) {
-        long answerInCent = (long) (wholeNumber * 100 * multiplyBy + decimalNumber * multiplyBy);
-        int newWholeNumber = (int) (answerInCent / 100);
-        int newDecimalNumber = (int) (answerInCent % 100);
-
-        Cash cash = new Cash();
-        cash.setCurrency(this.getCurrency());
-        if (newWholeNumber < 0) {
-            cash.setSign(Sign.NEGATIVE);
-        }
-        cash.setWholeNumber(newWholeNumber);
-        cash.setDecimalNumber(newDecimalNumber);
-        return cash;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Customer.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Customer.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Customer.java
deleted file mode 100644
index e12d5d2..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Customer.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core.dataobjects;
-
-import java.util.Date;
-
-/**
- * Customer class - This holds the information of tenants
- * i.e. customer=tenant
- */
-public class Customer {
-    private int id;
-    private String name;
-    private String context;
-    private String fullName;
-    private String email;
-    private Date startedDate;
-    private String address;
-    private Invoice activeInvoice;
-    private long totalBandwidth;
-    private long totalStorage;
-    private long totalCartridgeCPUHours;
-
-    public int getId() {
-        return id;
-    }
-
-    public void setId(int id) {
-        this.id = id;
-    }
-
-    public String getFullName() {
-        return fullName;
-    }
-
-    public void setFullName(String fullName) {
-        this.fullName = fullName;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public String getContext() {
-        return context;
-    }
-
-    public void setContext(String context) {
-        this.context = context;
-    }
-
-    public String getEmail() {
-        return email;
-    }
-
-    public void setEmail(String email) {
-        this.email = email;
-    }
-
-    public Date getStartedDate() {
-        return new Date(startedDate.getTime());
-    }
-
-    public void setStartedDate(Date startedDate) {
-        this.startedDate = new Date(startedDate.getTime());
-    }
-
-    public String getAddress() {
-        return address;
-    }
-
-    public void setAddress(String address) {
-        this.address = address;
-    }
-
-    /**
-     * This will be used by rules to retrieve the active invoice
-     *
-     * @return
-     */
-    public final Invoice getActiveInvoice() {
-        return activeInvoice;
-    }
-
-    public final void setActiveInvoice(Invoice invoice) {
-        this.activeInvoice = invoice;
-    }
-
-    public long getTotalBandwidth() {
-        return totalBandwidth;
-    }
-
-    public void setTotalBandwidth(long totalBandwidth) {
-        this.totalBandwidth = totalBandwidth;
-    }
-
-    public long getTotalStorage() {
-        return totalStorage;
-    }
-
-    public void setTotalStorage(long totalStorage) {
-        this.totalStorage = totalStorage;
-    }
-
-    public long getTotalCartridgeCPUHours() {
-        return totalCartridgeCPUHours;
-    }
-
-    public void setTotalCartridgeCPUHours(long totalCartridgeCPUHours) {
-        this.totalCartridgeCPUHours = totalCartridgeCPUHours;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        if (this == o) {
-            return true;
-        }
-        if (o == null || getClass() != o.getClass()) {
-            return false;
-        }
-
-        Customer customer = (Customer) o;
-
-        if (id != customer.id) {
-            return false;
-        }
-
-        return true;
-    }
-
-    @Override
-    public int hashCode() {
-        return id;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Discount.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Discount.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Discount.java
deleted file mode 100644
index 862b1fd..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Discount.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
-*  Copyright (c) 2005-2010, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
-*
-*  WSO2 Inc. 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.
-*/
-package org.wso2.carbon.billing.core.dataobjects;
-
-
-import java.util.Date;
-
-public class Discount {
-    
-    private int id;
-    private int tenantId;
-    private float percentage;
-    private float amount;
-    private Date startDate;
-    private Date endDate;
-    private boolean isPercentageType;
-
-    public int getId() {
-        return id;
-    }
-
-    public void setId(int id) {
-        this.id = id;
-    }
-
-    public int getTenantId() {
-        return tenantId;
-    }
-
-    public void setTenantId(int tenantId) {
-        this.tenantId = tenantId;
-    }
-
-    public float getPercentage() {
-        return percentage;
-    }
-
-    public void setPercentage(float percentage) {
-        this.percentage = percentage;
-    }
-
-    public float getAmount() {
-        return amount;
-    }
-
-    public void setAmount(float amount) {
-        this.amount = amount;
-    }
-
-    public Date getStartDate() {
-        return startDate;
-    }
-
-    public void setStartDate(Date startDate) {
-        this.startDate = startDate;
-    }
-
-    public Date getEndDate() {
-        return endDate;
-    }
-
-    public void setEndDate(Date endDate) {
-        this.endDate = endDate;
-    }
-
-    public boolean isPercentageType() {
-        return isPercentageType;
-    }
-
-    public void setPercentageType(boolean percentageType) {
-        isPercentageType = percentageType;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Invoice.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Invoice.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Invoice.java
deleted file mode 100644
index 697ae77..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Invoice.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core.dataobjects;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-/**
- * Invoice class - holds the invoice information
- */
-public class Invoice {
-    int id;
-    Date date;
-    Date startDate;
-    Date endDate;
-    Cash boughtForward;
-    Cash carriedForward;
-    Cash totalCost;
-    Cash totalPayment;
-    Customer customer;
-    List<Subscription> subscriptions = new ArrayList<Subscription>();
-    List<Payment> payments = new ArrayList<Payment>();
-
-    public int getId() {
-        return id;
-    }
-
-    public void setId(int id) {
-        this.id = id;
-    }
-
-    public Date getDate() {
-        return new Date(date.getTime());
-    }
-
-    public void setDate(Date date) {
-        this.date = new Date(date.getTime());
-    }
-
-    public Date getStartDate() {
-        return new Date(startDate.getTime());
-    }
-
-    public void setStartDate(Date startDate) {
-        this.startDate = new Date(startDate.getTime());
-    }
-
-    public Date getEndDate() {
-        return new Date(endDate.getTime());
-    }
-
-    public void setEndDate(Date endDate) {
-        this.endDate = new Date(endDate.getTime());
-    }
-
-    public Cash getBoughtForward() {
-        return boughtForward;
-    }
-
-    public void setBoughtForward(Cash boughtForward) {
-        this.boughtForward = boughtForward;
-    }
-
-    public Cash getCarriedForward() {
-        return carriedForward;
-    }
-
-    public void setCarriedForward(Cash carriedForward) {
-        this.carriedForward = carriedForward;
-    }
-
-    public Cash getTotalCost() {
-        return totalCost;
-    }
-
-    public void setTotalCost(Cash totalCost) {
-        this.totalCost = totalCost;
-    }
-
-    public Cash getTotalPayment() {
-        return totalPayment;
-    }
-
-    public void setTotalPayment(Cash totalPayment) {
-        this.totalPayment = totalPayment;
-    }
-
-    public Customer getCustomer() {
-        return customer;
-    }
-
-    public void setCustomer(Customer customer) {
-        this.customer = customer;
-    }
-
-    public List<Subscription> getSubscriptions() {
-        return subscriptions;
-    }
-
-    public void setSubscriptions(List<Subscription> subscriptions) {
-        this.subscriptions = subscriptions;
-    }
-
-    public List<Payment> getPayments() {
-        return payments;
-    }
-
-    public void setPayments(List<Payment> payments) {
-        this.payments = payments;
-    }
-
-    public void addPayment(Payment payment) {
-        this.payments.add(payment);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Item.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Item.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Item.java
deleted file mode 100644
index 8c92238..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Item.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core.dataobjects;
-
-import java.util.List;
-
-public class Item {
-    private int id;
-    private String name;
-    private Cash cost;
-    private Cash creditLimit; //this is the credit limit defined by the billing rules
-    private int bandwidthLimit;
-    private Cash bandwidthOveruseCharge;
-    private int resourceVolumeLimit;
-    private Cash resourceVolumeOveruseCharge;
-    private int cartridgeCPUHourLimit;
-    private Cash cartridgeCPUOveruseCharge;
-    private String description;
-    private Item parent;
-    private List<? extends Item> children;
-
-    public int getId() {
-        return id;
-    }
-
-    public void setId(int id) {
-        this.id = id;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public Cash getCost() {
-        return cost;
-    }
-
-    public void setCost(Cash cost) {
-        this.cost = cost;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(String description) {
-        this.description = description;
-    }
-
-    public Item getParent() {
-        return parent;
-    }
-
-    public void setParent(Item parent) {
-        this.parent = parent;
-    }
-
-    public List<? extends Item> getChildren() {
-        return children;
-    }
-
-    public void setChildren(List<? extends Item> children) {
-        this.children = children;
-    }
-
-    public Cash getCreditLimit() {
-        return creditLimit;
-    }
-
-    public void setCreditLimit(Cash creditLimit) {
-        this.creditLimit = creditLimit;
-    }
-
-    public int getBandwidthLimit() {
-        return bandwidthLimit;
-    }
-
-    public void setBandwidthLimit(int bandwidthLimit) {
-        this.bandwidthLimit = bandwidthLimit;
-    }
-
-    public Cash getBandwidthOveruseCharge() {
-        return bandwidthOveruseCharge;
-    }
-
-    public void setBandwidthOveruseCharge(Cash bandwidthOveruseCharge) {
-        this.bandwidthOveruseCharge = bandwidthOveruseCharge;
-    }
-
-    public int getResourceVolumeLimit() {
-        return resourceVolumeLimit;
-    }
-
-    public void setResourceVolumeLimit(int resourceVolumeLimit) {
-        this.resourceVolumeLimit = resourceVolumeLimit;
-    }
-
-    public Cash getResourceVolumeOveruseCharge() {
-        return resourceVolumeOveruseCharge;
-    }
-
-    public void setResourceVolumeOveruseCharge(Cash resourceVolumeOveruseCharge) {
-        this.resourceVolumeOveruseCharge = resourceVolumeOveruseCharge;
-    }
-
-    public int getCartridgeCPUHourLimit() {
-        return cartridgeCPUHourLimit;
-    }
-
-    public void setCartridgeCPUHourLimit(int cartridgeCPUHourLimit) {
-        this.cartridgeCPUHourLimit = cartridgeCPUHourLimit;
-    }
-
-    public Cash getCartridgeCPUOveruseCharge() {
-        return cartridgeCPUOveruseCharge;
-    }
-
-    public void setCartridgeCPUOveruseCharge(Cash cartridgeCPUOveruseCharge) {
-        this.cartridgeCPUOveruseCharge = cartridgeCPUOveruseCharge;
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        if (this == o) {
-            return true;
-        }
-        if (o == null || getClass() != o.getClass()) {
-            return false;
-        }
-
-        Item item = (Item) o;
-
-        if (name != null ? !name.equals(item.name) : item.name != null) {
-            return false;
-        }
-
-        return true;
-    }
-
-    @Override
-    public int hashCode() {
-        return name != null ? name.hashCode() : 0;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Payment.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Payment.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Payment.java
deleted file mode 100644
index e99f5d7..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Payment.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core.dataobjects;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-public class Payment {
-    int id;
-    Date date;
-    Cash amount;
-    String description;
-    List<Subscription> subscriptions;
-    Invoice invoice;
-
-    public int getId() {
-        return id;
-    }
-
-    public void setId(int id) {
-        this.id = id;
-    }
-
-    public Date getDate() {
-        if(date!=null){
-            return new Date(date.getTime());
-        }else{
-            return null;
-        }
-    }
-
-    public void setDate(Date date) {
-        if(date!=null){
-            this.date = new Date(date.getTime());
-        }else{
-            this.date = null;
-        }
-    }
-
-    public Cash getAmount() {
-        return amount;
-    }
-
-    public void setAmount(Cash amount) {
-        this.amount = amount;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(String description) {
-        this.description = description;
-    }
-
-    public List<Subscription> getSubscriptions() {
-        return subscriptions;
-    }
-
-    public void setSubscriptions(List<Subscription> subscriptions) {
-        this.subscriptions = subscriptions;
-    }
-
-    public void addSubscription(Subscription subscription) {
-        if (this.subscriptions == null) {
-            this.subscriptions = new ArrayList<Subscription>();
-        }
-        subscriptions.add(subscription);
-    }
-
-    public Invoice getInvoice() {
-        return invoice;
-    }
-
-    public void setInvoice(Invoice invoice) {
-        this.invoice = invoice;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ee2ab783/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Subscription.java
----------------------------------------------------------------------
diff --git a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Subscription.java b/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Subscription.java
deleted file mode 100644
index 0b9fbf3..0000000
--- a/components/stratos/billing/org.wso2.carbon.billing.core/2.1.3/src/main/java/org/wso2/carbon/billing/core/dataobjects/Subscription.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (c) 2008, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * Licensed 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.
- */
-package org.wso2.carbon.billing.core.dataobjects;
-
-import java.util.Date;
-import java.util.List;
-
-/**
- * Subscription class - information on subscriptions which the users
- * are subscribed to.
- */
-public class Subscription {
-    int id;
-    Date activeSince;
-    Date activeUntil;
-    Item item;
-    Customer customer;
-    boolean active;
-    int invoiceSubscriptionId = -1; // requires only if associated with an invoice
-    List<Payment> payments;
-    String subscriptionPlan;        //i.e. multitenance-small, multitencay-medium .....
-
-    public int getId() {
-        return id;
-    }
-
-    public void setId(int id) {
-        this.id = id;
-    }
-
-    public Date getActiveSince() {
-        if(activeSince!=null){
-            return  new Date(activeSince.getTime());
-        }else{
-            return null;
-        }
-    }
-
-    public void setActiveSince(Date activeSince) {
-        if(activeSince!=null){
-            this.activeSince = new Date(activeSince.getTime());
-        }else{
-            this.activeSince = null;
-        }
-
-    }
-
-    public Date getActiveUntil() {
-        if(activeUntil!=null){
-            return  new Date(activeUntil.getTime());
-        }else{
-            return null;
-        }
-    }
-
-    public void setActiveUntil(Date activeUntil) {
-        if(activeUntil!=null){
-            this.activeUntil = new Date(activeUntil.getTime());
-        }else{
-            this.activeUntil = null;
-        }
-
-    }
-
-    public Item getItem() {
-        return item;
-    }
-
-    public void setItem(Item item) {
-        this.item = item;
-    }
-
-    public Customer getCustomer() {
-        return customer;
-    }
-
-    public void setCustomer(Customer customer) {
-        this.customer = customer;
-    }
-
-    public boolean isActive() {
-        return active;
-    }
-
-    public void setActive(boolean active) {
-        this.active = active;
-    }
-
-    public int getInvoiceSubscriptionId() {
-        return invoiceSubscriptionId;
-    }
-
-    public void setInvoiceSubscriptionId(int invoiceSubscriptionId) {
-        this.invoiceSubscriptionId = invoiceSubscriptionId;
-    }
-
-    public List<Payment> getPayments() {
-        return payments;
-    }
-
-    public void setPayments(List<Payment> payments) {
-        this.payments = payments;
-    }
-
-    public String getSubscriptionPlan() {
-        return subscriptionPlan;
-    }
-
-    public void setSubscriptionPlan(String subscriptionPlan) {
-        this.subscriptionPlan = subscriptionPlan;
-    }
-}