You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by is...@apache.org on 2013/07/06 18:53:17 UTC
[5/7] refactoring org.apache.stratos.common component
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/config/PermissionConfig.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/config/PermissionConfig.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/config/PermissionConfig.java
deleted file mode 100644
index 5171019..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/config/PermissionConfig.java
+++ /dev/null
@@ -1,68 +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.stratos.common.config;
-
-import org.apache.axiom.om.OMElement;
-
-import javax.xml.namespace.QName;
-import java.util.Iterator;
-
-public class PermissionConfig {
- private static final String CONFIG_NS = "http://wso2.com/carbon/cloud/mgt/services";
- private static final String PATH = "path";
- private static final String NAME = "name";
- String name;
- String path;
-
- public PermissionConfig(OMElement configEle) {
- serialize(configEle);
- }
-
- public void serialize(OMElement configEle) {
-
- Iterator configChildIt = configEle.getChildElements();
- while (configChildIt.hasNext()) {
- Object configChildObj = configChildIt.next();
- if (!( configChildObj instanceof OMElement)) {
- continue;
- }
- OMElement configChildEle = (OMElement)configChildObj;
- if (new QName(CONFIG_NS, NAME, "").
- equals(configChildEle.getQName())) {
- name = configChildEle.getText();
- } else if (new QName(CONFIG_NS, PATH, "").
- equals(configChildEle.getQName())) {
- path = configChildEle.getText();
- }
- }
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getPath() {
- return path;
- }
-
- public void setPath(String path) {
- this.path = path;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/constants/StratosConstants.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/constants/StratosConstants.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/constants/StratosConstants.java
deleted file mode 100644
index bbc3dd9..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/constants/StratosConstants.java
+++ /dev/null
@@ -1,143 +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.stratos.common.constants;
-
-import java.io.File;
-
-public class StratosConstants {
-
- public static final String CLOUD_SERVICE_IS_ACTIVE_PROP_KEY = "active";
-
- public static final String CLOUD_SERVICE_INFO_STORE_PATH =
- "/repository/components/org.wso2.stratos/cloud-manager/cloud-services";
-
- public static final String TENANT_USER_VALIDATION_STORE_PATH =
- "/repository/components/org.wso2.carbon.validations";
- public static final String ADMIN_EMAIL_VERIFICATION_FLAG_PATH =
- "/repository/components/org.wso2.carbon.email-confirmation-flag";
- public static final String TENANT_DOMAIN_VERIFICATION_FLAG_PATH =
- "/repository/components/org.wso2.carbon.domain-confirmation-flag";
-
- public static final String DOMAIN_VALIDATOR_INFO_PATH =
- "/repository/components/org.wso2.carbon.domain-validator-info";
-
- public static final String TENANT_CREATION_THEME_PAGE_TOKEN =
- "/repository/components/org.wso2.carbon.theme-page-token";
-
- public static final String TENANT_PACKAGE_INFO_PATH =
- "/repository/components/org.wso2.carbon.package-info";
-
- public static final String ALL_THEMES_PATH =
- "/repository/components/org.wso2.carbon.all-themes";
-
- public static final String THROTTLING_RULES_PATH =
- "/repository/components/org.wso2.carbon.throttling-rules";
-
- public static final String ORIGINATED_SERVICE_PATH =
- "/repository/components/org.wso2.carbon.originated-service";
-
- public static final String PATH_SEPARATOR = "/";
-
- public static final String CLOUD_SERVICE_ICONS_STORE_PATH =
- "/repository/components/org.wso2.carbon.cloud-manager/" +
- "cloud-services-icons";
-
- public static final String VALIDATION_KEY_RESOURCE_NAME = "validation-key";
- public static final String INCOMING_PATH_DIR = "incoming";
- public static final String OUTGOING_PATH_DIR = "outgoing";
- public static final String MULTITENANCY_SCHEDULED_TASK_ID = "multitenancyScheduledTask";
- public static final String MULTITENANCY_VIEWING_TASK_ID = "multitenancyViewingTask";
-
- public static final String INVALID_TENANT = "invalidTenant";
- public static final String INACTIVE_TENANT = "inactiveTenant";
- public static final String ACTIVE_TENANT = "activeTenant";
- public static final String IS_EMAIL_VALIDATED = "isEmailValidated";
- public static final String IS_CREDENTIALS_ALREADY_RESET = "isCredentialsReset";
- public static final String TENANT_ADMIN = "tenantAdminUsername";
-
- public static final String CLOUD_MANAGER_SERVICE = "WSO2 Stratos Manager";
- public static final String CLOUD_IDENTITY_SERVICE = "WSO2 Stratos Identity";
- public static final String CLOUD_GOVERNANCE_SERVICE = "WSO2 Stratos Governance";
- public static final String CLOUD_ESB_SERVICE = "WSO2 Stratos Enterprise Service Bus";
-
- // keystore mgt related Constants
- public static final String TENANT_KS = "/repository/security/key-stores/";
- public static final String TENANT_PUB_KEY = "/repository/security/pub-key";
- public static final String PROP_TENANT_KS_TYPE = "key-store-type";
- public static final String PROP_TENANT_KS_PASSWD = "key-store-password";
- public static final String PROP_TENANT_KS_PRIV_KEY_PASSWD = "priv-key-password";
- public static final String PROP_TENANT_KS_ALIAS = "alias";
-
- // constants related to redirection
-
- public static final String UNVERIFIED_ACCOUNT_DOMAIN_SUFFIX = "-unverified";
- public static final String TENANT_SPECIFIC_URL_RESOLVED = "tenant-sepcific-url-resolved";
- public static final String SUFFIXED_UNVERIFIED_SESSION_FLAG = "temp-suffixed-unverified";
-
- // metering constants
- public static final String THROTTLING_ALL_ACTION = "all_actions";
- public static final String THROTTLING_IN_DATA_ACTION = "in_data_action"; //this covers registry capacity + registry bandwidth
- public static final String THROTTLING_OUT_DATA_ACTION = "out_data_action"; //this covers registry bandwidth
- public static final String THROTTLING_ADD_USER_ACTION = "add_user_action";
- public static final String THROTTLING_SERVICE_IN_BANDWIDTH_ACTION = "service_in_bandwith_action";
- public static final String THROTTLING_SERVICE_OUT_BANDWIDTH_ACTION = "service_out_bandwith_action";
- public static final String THROTTLING_WEBAPP_IN_BANDWIDTH_ACTION = "webapp_in_bandwith_action";
- public static final String THROTTLING_WEBAPP_OUT_BANDWIDTH_ACTION = "webapp_out_bandwith_action";
- public static final String THROTTLING_SERVICE_REQUEST_ACTION = "service_request_action";
- public static final String THROTTLING_SERVICE_RESPONSE_ACTION = "service_response_action";
-
- // the session attribute to keep track whether the registry action validated
- // and the usage persisted
- public static final String REGISTRY_ACTION_VALIDATED_SESSION_ATTR = "registryActionValidated";
- public static final String REGISTRY_USAGE_PERSISTED_SESSION_ATTR = "usagePersited";
-
- // Metering servlet attributes
- public static final String SERVICE_NAME_SERVLET_ATTR = "meteringServiceName";
- public static final String TENANT_ID_SERVLET_ATTR = "tenantId";
- public static final String ADMIN_SERVICE_SERVLET_ATTR = "adminService";
-
- // * as a Service impl related constants
- public static final String ORIGINATED_SERVICE = "originatedService";
-
- // Configuration file name
- public static final String STRATOS_CONF_FILE = "stratos.xml";
- //public static final String STRATOS_CONF_LOC = "repository/conf/";
- //public static final String STRATOS_CONF_FILE_WITH_PATH = STRATOS_CONF_LOC + STRATOS_CONF_FILE;
-
- // EULA location
- public static final String STRATOS_EULA = "eula.xml";
-
- // EULA default text.
- public static final String STRATOS_EULA_DEFAULT_TEXT =
- "Please refer to: " + StratosConstants.STRATOS_TERMS_OF_USAGE +
- " for terms and usage and " + StratosConstants.STRATOS_PRIVACY_POLICY +
- " for privacy policy of WSO2 Stratos.";
-
- // Web location of Terms of Usage and privacy policy
- public static final String STRATOS_TERMS_OF_USAGE =
- "http://wso2.com/cloud/services/terms-of-use/";
- public static final String STRATOS_PRIVACY_POLICY =
- "http://wso2.com/cloud/services/privacy-policy/";
- public static final String MULTITENANCY_FREE_PLAN = "Demo";
- public static final String MULTITENANCY_SMALL_PLAN = "SMB";
- public static final String MULTITENANCY_MEDIUM_PLAN = "Professional";
- public static final String MULTITENANCY_LARGE_PLAN = "Enterprise";
- public static final String EMAIL_CONFIG= "email";
- public static final String MULTITENANCY_CONFIG_FOLDER = "multitenancy";
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/constants/UsageConstants.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/constants/UsageConstants.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/constants/UsageConstants.java
deleted file mode 100644
index aa6a922..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/constants/UsageConstants.java
+++ /dev/null
@@ -1,53 +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.stratos.common.constants;
-
-public class UsageConstants {
- final public static String ANY_DURATION = "anyDuration";
-
- public static final String SYSTEM_METERING_PATH =
- "/repository/components/org.wso2.carbon.system-metering";
-
- public static final String CUSTOM_METERING_PATH =
- "/repository/components/org.wso2.carbon.system-metering";
-
- // the measurements
- final public static String CAPACITY_USAGE = "capacity-usage";
-
- final public static String SERVICE_REQUEST_COUNT = "serviceRequestCount";
- final public static String SERVICE_RESPONSE_COUNT = "serviceResponseCount";
- final public static String SERVICE_FAULT_COUNT = "serviceFaultCount";
-
- public static final String BANDWIDTH_KEY_PATTERN = "%Bandwidth%";
- public static final String REGISTRY_BANDWIDTH = "RegistryBandwidth";
- public static final String SERVICE_BANDWIDTH = "ServiceBandwidth";
- public static final String WEBAPP_BANDWIDTH = "WebappBandwidth";
- public static final String IN_LABLE = "-In";
- public static final String OUT_LABLE = "-Out";
- public static final String REGISTRY_CONTENT_BANDWIDTH = "ContentBandwidth";
-
- final public static String REGISTRY_INCOMING_BW = REGISTRY_BANDWIDTH + IN_LABLE;
- final public static String REGISTRY_OUTGOING_BW = REGISTRY_BANDWIDTH + OUT_LABLE;
- final public static String REGISTRY_TOTAL_BW = "registry-total-bw-usage";
- final public static String NUMBER_OF_USERS = "number-of-users";
-
- final public static String SERVICE_INCOMING_BW = SERVICE_BANDWIDTH + IN_LABLE;
- final public static String SERVICE_OUTGOING_BW = SERVICE_BANDWIDTH + OUT_LABLE;
- final public static String SERVICE_TOTAL_BW = "serviceRequestTotalBw";
-
- final public static String WEBAPP_INCOMING_BW = WEBAPP_BANDWIDTH + IN_LABLE;
- final public static String WEBAPP_OUTGOING_BW = WEBAPP_BANDWIDTH + OUT_LABLE;
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/exception/StratosException.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/exception/StratosException.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/exception/StratosException.java
deleted file mode 100644
index 678cc63..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/exception/StratosException.java
+++ /dev/null
@@ -1,41 +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.stratos.common.exception;
-
-/**
- * This class is defined as the general Exception implementation for Stratos. This can be used
- * within Stratos components when handling exceptions.
- */
-public class StratosException extends Exception{
-
- public StratosException() {
- }
-
- public StratosException(String message) {
- super(message);
- }
-
- public StratosException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public StratosException(Throwable cause) {
- super(cause);
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/internal/CloudCommonServiceComponent.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/internal/CloudCommonServiceComponent.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/internal/CloudCommonServiceComponent.java
deleted file mode 100644
index 7549666..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/internal/CloudCommonServiceComponent.java
+++ /dev/null
@@ -1,121 +0,0 @@
-package org.wso2.carbon.stratos.common.internal;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.osgi.framework.BundleContext;
-import org.osgi.service.component.ComponentContext;
-import org.wso2.carbon.stratos.common.packages.PackageInfoHolder;
-import org.wso2.carbon.stratos.common.util.CommonUtil;
-import org.wso2.carbon.stratos.common.util.StratosConfiguration;
-import org.wso2.carbon.registry.core.exceptions.RegistryException;
-import org.wso2.carbon.registry.core.service.RegistryService;
-import org.wso2.carbon.registry.core.session.UserRegistry;
-import org.wso2.carbon.user.core.service.RealmService;
-import org.wso2.carbon.user.core.tenant.TenantManager;
-
-/**
- * @scr.component name="stratos.common" immediate="true"
- * @scr.reference name="registry.service"
- * interface="org.wso2.carbon.registry.core.service.RegistryService"
- * cardinality="1..1" policy="dynamic" bind="setRegistryService"
- * unbind="unsetRegistryService"
- * @scr.reference name="user.realmservice.default"
- * interface="org.wso2.carbon.user.core.service.RealmService"
- * cardinality="1..1" policy="dynamic" bind="setRealmService"
- * unbind="unsetRealmService"
- */
-public class CloudCommonServiceComponent {
-
- private static Log log = LogFactory.getLog(CloudCommonServiceComponent.class);
-
- private static BundleContext bundleContext;
- private static RealmService realmService;
- private static RegistryService registryService;
- private static PackageInfoHolder packageInfos;
-
- protected void activate(ComponentContext context) {
- try {
- bundleContext = context.getBundleContext();
- if (CommonUtil.getStratosConfig() == null) {
- StratosConfiguration stratosConfig = CommonUtil.loadStratosConfiguration();
- CommonUtil.setStratosConfig(stratosConfig);
- }
-
- // Loading the EULA
- if (CommonUtil.getEula() == null) {
- String eula = CommonUtil.loadTermsOfUsage();
- CommonUtil.setEula(eula);
- }
-
- packageInfos = new PackageInfoHolder();
- context.getBundleContext().registerService(
- PackageInfoHolder.class.getName(), packageInfos, null);
-
- //Register manager configuration OSGI service
- try {
- StratosConfiguration stratosConfiguration = CommonUtil.loadStratosConfiguration();
- bundleContext.registerService(StratosConfiguration.class.getName(), stratosConfiguration, null);
- if (log.isDebugEnabled()) {
- log.debug("******* Cloud Common Service bundle is activated ******* ");
- }
- } catch (Exception ex) {
- String msg = "An error occurred while initializing Cloud Common Service as an OSGi Service";
- log.error(msg, ex);
- }
- } catch (Throwable e) {
- log.error("Error in activating Cloud Common Service Component" + e.toString());
- }
- }
-
- protected void deactivate(ComponentContext context) {
- log.debug("******* Tenant Core bundle is deactivated ******* ");
- }
-
- protected void setRegistryService(RegistryService registryService) {
- CloudCommonServiceComponent.registryService = registryService;
- }
-
- protected void unsetRegistryService(RegistryService registryService) {
- setRegistryService(null);
- }
-
- protected void setRealmService(RealmService realmService) {
- CloudCommonServiceComponent.realmService = realmService;
- }
-
- protected void unsetRealmService(RealmService realmService) {
- setRealmService(null);
- }
-
- public static BundleContext getBundleContext() {
- return bundleContext;
- }
-
- public static RegistryService getRegistryService() {
- return registryService;
- }
-
-
- public static RealmService getRealmService() {
- return realmService;
- }
-
- public static TenantManager getTenantManager() {
- return realmService.getTenantManager();
- }
-
- public static UserRegistry getGovernanceSystemRegistry(int tenantId) throws RegistryException {
- return registryService.getGovernanceSystemRegistry(tenantId);
- }
-
- public static UserRegistry getConfigSystemRegistry(int tenantId) throws RegistryException {
- return registryService.getConfigSystemRegistry(tenantId);
- }
-
- public static PackageInfoHolder getPackageInfos() {
- return packageInfos;
- }
-
-
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/listeners/TenantMgtListener.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/listeners/TenantMgtListener.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/listeners/TenantMgtListener.java
deleted file mode 100644
index 49da83e..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/listeners/TenantMgtListener.java
+++ /dev/null
@@ -1,39 +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.stratos.common.listeners;
-
-import org.wso2.carbon.stratos.common.beans.TenantInfoBean;
-import org.wso2.carbon.stratos.common.exception.StratosException;
-
-public interface TenantMgtListener {
- public void onTenantCreate(TenantInfoBean tenantInfo) throws StratosException;
-
- public void onTenantUpdate(TenantInfoBean tenantInfo) throws StratosException;
-
- public void onTenantRename(int tenantId, String oldDomainName,
- String newDomainName)throws StratosException;
-
- public void onTenantInitialActivation(int tenantId) throws StratosException;
-
- public void onTenantActivation(int tenantId) throws StratosException;
-
- public void onTenantDeactivation(int tenantId) throws StratosException;
-
- public void onSubscriptionPlanChange(int tenentId, String oldPlan,
- String newPlan) throws StratosException;
-
- public int getListenerOrder();
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/packages/PackageInfo.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/packages/PackageInfo.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/packages/PackageInfo.java
deleted file mode 100644
index 869c694..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/packages/PackageInfo.java
+++ /dev/null
@@ -1,93 +0,0 @@
-package org.wso2.carbon.stratos.common.packages;
-
-/*
- * Deserialize following XML
-<packages xmlns="http://wso2.com/carbon/multitenancy/billing/pacakges">
- <package name="multitenancy-free">
- <!--<subscriptionCharge>0</subscriptionCharge>--> <!-- $ per month -->
- <users>
- <limit>5</limit>
- <charge>0</charge> <!-- charge per month -->
- </users>
- <resourceVolume>
- <limit>10</limit> <!--mb per user -->
- </resourceVolume>
- <bandwidth>
- <limit>1000</limit> <!-- mb per user -->
- <overuseCharge>0</overuseCharge> <!-- $ per user per month -->
- </bandwidth>
- </package>
- <package name="multitenancy-small">
- ...
- </package>
-</packages>
- */
-public class PackageInfo {
-
- private String name;
- private int usersLimit;
- private int subscriptionCharge;
- private int chargePerUser;
- private int resourceVolumeLimit;
- private int bandwidthLimit;
- private int bandwidthOveruseCharge;
-
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public int getUsersLimit() {
- return usersLimit;
- }
-
- public void setUsersLimit(int usersLimit) {
- this.usersLimit = usersLimit;
- }
-
- public int getSubscriptionCharge() {
- return subscriptionCharge;
- }
-
- public void setSubscriptionCharge(int subscriptionCharge) {
- this.subscriptionCharge = subscriptionCharge;
- }
-
- public int getChargePerUser() {
- return chargePerUser;
- }
-
- public void setChargePerUser(int chargePerUser) {
- this.chargePerUser = chargePerUser;
- }
-
- public int getResourceVolumeLimit() {
- return resourceVolumeLimit;
- }
-
- public void setResourceVolumeLimit(int resourceVolumeLimit) {
- this.resourceVolumeLimit = resourceVolumeLimit;
- }
-
- public int getBandwidthLimit() {
- return bandwidthLimit;
- }
-
- public void setBandwidthLimit(int bandwidthLimit) {
- this.bandwidthLimit = bandwidthLimit;
- }
-
- public int getBandwidthOveruseCharge() {
- return bandwidthOveruseCharge;
- }
-
- public void setBandwidthOveruseCharge(int bandwidthOveruseCharge) {
- this.bandwidthOveruseCharge = bandwidthOveruseCharge;
- }
-
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/packages/PackageInfoHolder.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/packages/PackageInfoHolder.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/packages/PackageInfoHolder.java
deleted file mode 100644
index bf5c1e6..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/packages/PackageInfoHolder.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.stratos.common.packages;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.xpath.AXIOMXPath;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.jaxen.JaxenException;
-import org.wso2.carbon.stratos.common.constants.StratosConstants;
-import org.wso2.carbon.stratos.common.exception.StratosException;
-import org.wso2.carbon.stratos.common.util.CommonUtil;
-import org.wso2.carbon.utils.CarbonUtils;
-
-import javax.xml.namespace.QName;
-import java.io.File;
-import java.io.FileInputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-public class PackageInfoHolder {
- private static Log log = LogFactory.getLog(PackageInfoHolder.class);
- private static final String PACKAGE_DESCRIPTION_CONFIG = "multitenancy-packages.xml";
- private static final String PACKAGE_DESCRIPTION_CONFIG_NS =
- "http://wso2.com/carbon/multitenancy/billing/pacakges";
-
- List<PackageInfo> multitenancyPackages = new ArrayList<PackageInfo>();
-
- public PackageInfoHolder() throws StratosException {
- multitenancyPackages = deserializePackageDescriptionConfig();
- }
-
- public List<PackageInfo> getMultitenancyPackages() {
- return multitenancyPackages;
- }
-
- /*
- * Deserialize following XML
- <packages xmlns="http://wso2.com/carbon/multitenancy/billing/pacakges">
- <package name="multitenancy-free">
- <!--<subscriptionCharge>0</subscriptionCharge>--> <!-- $ per month -->
- <users>
- <limit>5</limit>
- <charge>0</charge> <!-- charge per month -->
- </users>
- <resourceVolume>
- <limit>10</limit> <!--mb per user -->
- </resourceVolume>
- <bandwidth>
- <limit>1000</limit> <!-- mb per user -->
- <overuseCharge>0</overuseCharge> <!-- $ per user per month -->
- </bandwidth>
- </package>
- <package name="multitenancy-small">
- ...
- </package>
- </packages>
- */
- private List<PackageInfo> deserializePackageDescriptionConfig() throws StratosException {
- String configFilePath = CarbonUtils.getCarbonConfigDirPath() + File.separator +
- StratosConstants.MULTITENANCY_CONFIG_FOLDER + File.separator +
- PACKAGE_DESCRIPTION_CONFIG;
-
- OMElement packageConfigs;
- try {
- packageConfigs = CommonUtil.buildOMElement(new FileInputStream(configFilePath));
- } catch (Exception e) {
- String msg = "Error in deserializing the packageConfigs file: " + configFilePath + ".";
- log.error(msg, e);
- throw new StratosException(msg, e);
- }
-
- @SuppressWarnings("unchecked")
- Iterator<OMElement> packageConfigsChildsIt = packageConfigs.getChildElements();
- while (packageConfigsChildsIt.hasNext()) {
- OMElement packageConfigEle = packageConfigsChildsIt.next();
- if (!new QName(PACKAGE_DESCRIPTION_CONFIG_NS, "package").equals(
- packageConfigEle.getQName())) {
- continue;
- }
-
- PackageInfo multitenancyPackage = new PackageInfo();
- String packageName = packageConfigEle.getAttributeValue(new QName("name"));
- String subscriptionCharge = getPackageConfigValue("subscriptionCharge", packageConfigEle);
- String usersLimit = getPackageConfigValue("users.limit", packageConfigEle);
- String usersCharge = getPackageConfigValue("users.charge", packageConfigEle);
-
- String resourceVolumeLimit =
- getPackageConfigValue("resourceVolume.limit", packageConfigEle);
- String resourceVolumeOveruseCharge =
- getPackageConfigValue("resourceVolume.overuseCharge", packageConfigEle);
- String bandwidthLimit = getPackageConfigValue("bandwidth.limit", packageConfigEle);
- String bandwidthOveruseCharge =
- getPackageConfigValue("bandwidth.overuseCharge", packageConfigEle);
- int usersLimitInt = -1;
- if (!usersLimit.equals("unlimited")) {
- usersLimitInt = Integer.parseInt(usersLimit);
- }
- int resourceVolumeLimitInt = -1;
- if (!resourceVolumeLimit.equals("unlimited")) {
- resourceVolumeLimitInt = Integer.parseInt(resourceVolumeLimit);
- }
- int bandwidthLimitInt = -1;
- if (!bandwidthLimit.equals("unlimited")) {
- bandwidthLimitInt = Integer.parseInt(bandwidthLimit);
- }
-
- multitenancyPackage.setName(packageName);
- //In the PackageInfo class subscriptionCharge, chargeperUser and bandwidthOverUsageCharge
- //are declared as Integers. I think it is better to change them to float. If somebody
- //enters a float value to the conf file it will cause an exception here
- multitenancyPackage.setSubscriptionCharge(Integer.parseInt(subscriptionCharge));
- multitenancyPackage.setUsersLimit(usersLimitInt);
- // multitenancyPackage.setChargePerUser(Integer.parseInt(usersCharge));
- multitenancyPackage.setResourceVolumeLimit(resourceVolumeLimitInt);
- multitenancyPackage.setBandwidthLimit(bandwidthLimitInt);
- // multitenancyPackage.setBandwidthOveruseCharge(Integer.parseInt(bandwidthOveruseCharge));
-
- multitenancyPackages.add(multitenancyPackage);
- }
- return multitenancyPackages;
- }
-
- private String getPackageConfigValue(String key, OMElement packageNode) throws StratosException {
- String qualifiedKey = "ns:" + key.replaceAll("\\.", "/ns:");
- AXIOMXPath xpathExpression;
- try {
- xpathExpression = new AXIOMXPath(qualifiedKey);
- xpathExpression.addNamespace("ns", PACKAGE_DESCRIPTION_CONFIG_NS);
- List valueNodes = xpathExpression.selectNodes(packageNode);
- if (valueNodes.isEmpty()) {
- if (log.isDebugEnabled()) {
- String msg = "No results found parsing package configuration for key: " +
- qualifiedKey + ".";
- log.debug(msg);
- }
- return null;
- }
- OMElement valueNode = (OMElement) valueNodes.get(0);
- return valueNode.getText();
- } catch (JaxenException e) {
- String msg = "Error in retrieving the key: " + qualifiedKey + ".";
- log.error(msg, e);
- throw new StratosException(msg, e);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/services/PackageInfoService.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/services/PackageInfoService.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/services/PackageInfoService.java
deleted file mode 100644
index 52ec2e1..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/services/PackageInfoService.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package org.wso2.carbon.stratos.common.services;
-
-import java.util.List;
-
-import org.wso2.carbon.stratos.common.internal.CloudCommonServiceComponent;
-import org.wso2.carbon.stratos.common.packages.PackageInfo;
-
-public class PackageInfoService {
-
- public PackageInfo[] getPackageInfos() throws Exception {
- List<PackageInfo> list = CloudCommonServiceComponent.getPackageInfos().
- getMultitenancyPackages();
- PackageInfo[] packageInfos = list.toArray(new PackageInfo[list.size()]);
- return packageInfos;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/ClaimsMgtUtil.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/ClaimsMgtUtil.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/ClaimsMgtUtil.java
deleted file mode 100644
index f3e03c7..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/ClaimsMgtUtil.java
+++ /dev/null
@@ -1,263 +0,0 @@
-/*
- * Copyright (c) 2010, 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.stratos.common.util;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.wso2.carbon.user.core.UserCoreConstants;
-import org.wso2.carbon.user.core.UserStoreException;
-import org.wso2.carbon.user.core.UserStoreManager;
-import org.wso2.carbon.user.core.service.RealmService;
-import org.wso2.carbon.user.core.tenant.Tenant;
-import org.wso2.carbon.utils.multitenancy.MultitenantConstants;
-
-/*
- * This class handles the parameters that are input during the registration
- * which later are
- * stored as claims.
- *
- * Current claims are:
- * First Name - GIVEN_NAME
- * Last Name - SURNAME
- */
-public class ClaimsMgtUtil {
-
- private static final Log log = LogFactory.getLog(ClaimsMgtUtil.class);
-
- /* Methods to get the first and last names from the getNames() */
- /**
- * gets first name
- *
- * @param tenant
- * tenant
- * @param tenantId
- * tenant id
- * @return first name
- * @throws Exception
- * if error in getting the first name
- */
- public static String getFirstName(RealmService realmService, int tenantId)throws Exception {
- String names[] = getNames(realmService, tenantId);
- return names[0];
- }
-
- /**
- * gets last name
- *
- * @param tenant
- * tenant
- * @param tenantId
- * tenant id
- * @return last name
- * @throws Exception
- * if error in getting the last name
- */
- public static String getLastName(RealmService realmService, int tenantId) throws Exception {
- String names[] = getNames(realmService, tenantId);
- return names[1];
- }
-
- /**
- * Gets the first name of a tenant admin to address him/her in the
- * notifications
- *
- * @param tenant
- * tenant
- * @param tenantId
- * tenant Id
- * @return first name / calling name
- * @throws Exception
- * if unable to retrieve the admin name
- */
- public static String[] getNames(RealmService realmService, int tenantId) throws Exception {
- String[] names = new String[2];
- String firstname = "", lastname = "";
- try {
- firstname = getFirstNamefromUserStoreManager(realmService, tenantId);
- } catch (Exception ignore) {
- if (log.isDebugEnabled()) {
- // Not exceptions,due to the existence of tenants with no full name.
- String msg = "Unable to get the firstname from the user store manager";
- log.debug(msg, ignore);
- }
- }
- if (firstname != null && !firstname.trim().equals("")) {
- lastname = getLastNamefromUserStoreManager(realmService, tenantId);
- if ((lastname != null) && (!lastname.trim().equals(""))) {
- names[0] = firstname;
- names[1] = lastname;
- } else {
- // no last name - fullname was considered givenname;
- names = getNamesfromFullName(realmService, firstname);
- }
- } else {
- // Work around for old tenants - where even full name is not input.
- if (log.isDebugEnabled()) {
- log.debug("First name is not available");
- }
- try {
- firstname = getAdminUserNameFromTenantId(realmService, tenantId);
- names[0] = firstname;
- names[1] = lastname;
- } catch (Exception e) {
- String msg = "Unable to get the admin Name from the user store manager";
- log.error(msg, e);
- throw new Exception(msg, e);
- }
- }
- return names;
- }
-
- /**
- * Method to get the name of the admin user given the tenant id
- *
- * @param tenantId
- * tenant id
- * @return admin user name
- * @throws Exception
- * UserStoreException
- */
- public static String getAdminUserNameFromTenantId(RealmService realmService, int tenantId)
- throws Exception {
- if (tenantId == MultitenantConstants.SUPER_TENANT_ID) {
- return realmService.getBootstrapRealmConfiguration().getAdminUserName();
- }
- String tenantAdminName ="";
- try {
- if (realmService.getTenantManager().getTenant(tenantId) != null) {
- tenantAdminName = realmService.getTenantManager().getTenant(tenantId).getAdminName();
- }
- } catch (org.wso2.carbon.user.api.UserStoreException e) {
- String msg = "Unable to retrieve the admin name for the tenant with the tenant Id: " +
- tenantId;
- log.error(msg, e);
- throw new Exception(msg, e);
- }
- return tenantAdminName;
- }
-
- /**
- * Let's split the givenname into two.
- *
- * @param fullName
- * full name of the tenant admin
- * @return first name
- */
- public static String[] getNamesfromFullName(RealmService realmService, String fullName) {
- String[] names = new String[0];
-
- if (!fullName.trim().equals("")) {
- names = fullName.split(" ", 2); // split by space.
- }
- return names; // first entry as the calling name.
- }
-
- /**
- * Get the claims from the user store manager
- *
- * @param tenant
- * tenant information
- * @param tenantId
- * tenantId
- * @param claim
- * claim name
- * @return claim value
- * @throws org.wso2.carbon.user.core.UserStoreException
- * exception in getting the user store manager
- */
- public static String getClaimfromUserStoreManager(RealmService realmService, int tenantId,
- String claim) throws UserStoreException {
- UserStoreManager userStoreManager = null;
- String claimValue = "";
- try {
- if (realmService.getTenantUserRealm(tenantId) != null) {
- userStoreManager =
- (UserStoreManager) realmService.getTenantUserRealm(tenantId)
- .getUserStoreManager();
- }
-
- } catch (Exception e) {
- String msg = "Error retrieving the user store manager for the tenant";
- log.error(msg, e);
- throw new UserStoreException(msg, e);
- }
- try {
- if (userStoreManager != null) {
- claimValue =
- userStoreManager.getUserClaimValue(
- getAdminUserNameFromTenantId(realmService, tenantId), claim,
- UserCoreConstants.DEFAULT_PROFILE);
- }
- return claimValue;
- } catch (Exception e) {
- String msg = "Unable to retrieve the claim for the given tenant";
- log.error(msg, e);
- throw new UserStoreException(msg, e);
- }
- }
-
- /**
- * Gets first name from the user store manager
- *
- * @param tenant
- * tenant
- * @param tenantId
- * tenant id
- * @return first name
- * @throws UserStoreException
- * , if error in getting the claim GIVEN_NAME
- */
- public static String getFirstNamefromUserStoreManager(RealmService realmService,
- int tenantId) throws UserStoreException {
- try {
- return getClaimfromUserStoreManager(realmService, tenantId,
- UserCoreConstants.ClaimTypeURIs.GIVEN_NAME);
- } catch (Exception e) {
- String msg = "First Name not found for the tenant";
- log.debug(msg, e);
- return ""; // returns empty string
- }
- }
-
- /**
- * Gets last name from the user store manager
- *
- * @param tenant
- * tenant
- * @param tenantId
- * tenant id
- * @return last name
- * @throws UserStoreException
- * , if error in getting the claim SURNAME
- */
- public static String getLastNamefromUserStoreManager(RealmService realmService,
- int tenantId) throws UserStoreException {
- String lastname = "";
- try {
- lastname = getClaimfromUserStoreManager(realmService, tenantId,
- UserCoreConstants.ClaimTypeURIs.SURNAME);
- } catch (Exception e) {
- String msg = "Last Name not found for the tenant";
- log.debug(msg, e);
- }
- return lastname; // returns empty string, if couldn't get last name from
- // userStore manager
- }
-
-}
-
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/CloudServicesUtil.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/CloudServicesUtil.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/CloudServicesUtil.java
deleted file mode 100644
index e8089d2..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/CloudServicesUtil.java
+++ /dev/null
@@ -1,182 +0,0 @@
-package org.wso2.carbon.stratos.common.util;
-
-import java.util.List;
-import java.util.Map;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.wso2.carbon.stratos.common.config.CloudServiceConfig;
-import org.wso2.carbon.stratos.common.config.CloudServicesDescConfig;
-import org.wso2.carbon.stratos.common.config.PermissionConfig;
-import org.wso2.carbon.stratos.common.constants.StratosConstants;
-import org.wso2.carbon.stratos.common.internal.CloudCommonServiceComponent;
-import org.wso2.carbon.registry.core.Collection;
-import org.wso2.carbon.registry.core.RegistryConstants;
-import org.wso2.carbon.registry.core.Resource;
-import org.wso2.carbon.registry.core.session.UserRegistry;
-import org.wso2.carbon.user.core.UserStoreException;
-import org.wso2.carbon.user.mgt.UserMgtConstants;
-import org.wso2.carbon.utils.multitenancy.MultitenantConstants;
-
-public class CloudServicesUtil {
-
- private static final Log log = LogFactory.getLog(CloudServicesUtil.class);
- // TODO protect using Java security
-
- public static void activateAllServices(CloudServicesDescConfig cloudServicesDesc, int tenantId) throws Exception {
-
- java.util.Collection<CloudServiceConfig> cloudServiceConfigList =
- cloudServicesDesc.getCloudServiceConfigs().
- values();
- if (cloudServiceConfigList != null) {
- for (CloudServiceConfig cloudServiceConfig : cloudServiceConfigList) {
- if (cloudServiceConfig.isDefaultActive()) {
- String cloudServiceName = cloudServiceConfig.getName();
- try {
- if (!CloudServicesUtil.isCloudServiceActive(cloudServiceName, tenantId)) {
- CloudServicesUtil.setCloudServiceActive(true,
- cloudServiceName,
- tenantId,
- cloudServicesDesc.getCloudServiceConfigs().
- get(cloudServiceName));
- }
- } catch (Exception e) {
- String msg = "Error in activating the cloud service at the tenant" +
- "creation. tenant id: " + tenantId + ", service name: " +
- cloudServiceName;
- log.error(msg, e);
- throw new UserStoreException(msg, e);
- }
- }
- }
- }
- }
-
- public static void activateOriginalAndCompulsoryServices(CloudServicesDescConfig cloudServicesDesc,
- String originalService,
- int tenantId) throws Exception {
-
- Map<String, CloudServiceConfig> cloudServiceConfigs =
- cloudServicesDesc.getCloudServiceConfigs();
- if (CloudServicesUtil.isServiceNameValid(cloudServicesDesc, originalService)) {
- if (!CloudServicesUtil.isCloudServiceActive(originalService, tenantId)) {
- CloudServicesUtil.setCloudServiceActive(true, originalService, tenantId,
- cloudServiceConfigs.get(originalService));
- log.info("Successfully activated the " + originalService + " for the tenant " +
- tenantId);
- }
- // register the compulsory services
- if (!CloudServicesUtil.isCloudServiceActive(StratosConstants.CLOUD_IDENTITY_SERVICE,
- tenantId)) {
- CloudServicesUtil.setCloudServiceActive(true,
- StratosConstants.CLOUD_IDENTITY_SERVICE,
- tenantId,
- cloudServiceConfigs.get(StratosConstants.CLOUD_IDENTITY_SERVICE));
- }
- if (!CloudServicesUtil.isCloudServiceActive(StratosConstants.CLOUD_GOVERNANCE_SERVICE,
- tenantId)) {
- CloudServicesUtil.setCloudServiceActive(true,
- StratosConstants.CLOUD_GOVERNANCE_SERVICE,
- tenantId,
- cloudServiceConfigs.get(StratosConstants.CLOUD_GOVERNANCE_SERVICE));
- }
- } else {
- log.warn("Unable to activate the " + originalService + " for the tenant " + tenantId);
- }
-
- }
-
- public static void setCloudServiceActive(boolean active,
- String cloudServiceName,
- int tenantId, CloudServiceConfig cloudServiceConfig)
- throws Exception {
- if (cloudServiceConfig.getLabel() == null) {
- // for the non-labled services, we are not setting/unsetting the
- // service active
- return;
- }
-
- UserRegistry govRegistry =
- CloudCommonServiceComponent.getGovernanceSystemRegistry(
- MultitenantConstants.SUPER_TENANT_ID);
- UserRegistry configRegistry = CloudCommonServiceComponent.getConfigSystemRegistry(tenantId);
- String cloudServiceInfoPath = StratosConstants.CLOUD_SERVICE_INFO_STORE_PATH +
- RegistryConstants.PATH_SEPARATOR + tenantId +
- RegistryConstants.PATH_SEPARATOR + cloudServiceName;
-
- Resource cloudServiceInfoResource;
- if (govRegistry.resourceExists(cloudServiceInfoPath)) {
- cloudServiceInfoResource = govRegistry.get(cloudServiceInfoPath);
- } else {
- cloudServiceInfoResource = govRegistry.newCollection();
- }
- cloudServiceInfoResource.setProperty(StratosConstants.CLOUD_SERVICE_IS_ACTIVE_PROP_KEY,
- active ? "true" : "false");
- govRegistry.put(cloudServiceInfoPath, cloudServiceInfoResource);
-
- // then we will copy the permissions
- List<PermissionConfig> permissionConfigs = cloudServiceConfig.getPermissionConfigs();
- for (PermissionConfig permissionConfig : permissionConfigs) {
- String path = permissionConfig.getPath();
- String name = permissionConfig.getName();
- if (active) {
- if (!configRegistry.resourceExists(path)) {
- Collection collection = configRegistry.newCollection();
- collection.setProperty(UserMgtConstants.DISPLAY_NAME, name);
- configRegistry.put(path, collection);
- }
- } else {
- if (configRegistry.resourceExists(path)) {
- configRegistry.delete(path);
- }
- }
- }
- }
-
- public static boolean isCloudServiceActive(String cloudServiceName,
- int tenantId) throws Exception {
- UserRegistry govRegistry = CloudCommonServiceComponent.getGovernanceSystemRegistry(
- MultitenantConstants.SUPER_TENANT_ID);
- return isCloudServiceActive(cloudServiceName, tenantId, govRegistry);
- }
-
- public static boolean isCloudServiceActive(String cloudServiceName,
- int tenantId, UserRegistry govRegistry)
- throws Exception {
- // The cloud manager is always active
- if (StratosConstants.CLOUD_MANAGER_SERVICE.equals(cloudServiceName)) {
- return true;
- }
-
- String cloudServiceInfoPath = StratosConstants.CLOUD_SERVICE_INFO_STORE_PATH +
- RegistryConstants.PATH_SEPARATOR + tenantId +
- RegistryConstants.PATH_SEPARATOR + cloudServiceName;
- Resource cloudServiceInfoResource;
- if (govRegistry.resourceExists(cloudServiceInfoPath)) {
- cloudServiceInfoResource = govRegistry.get(cloudServiceInfoPath);
- String isActiveStr =
- cloudServiceInfoResource.getProperty(
- StratosConstants.CLOUD_SERVICE_IS_ACTIVE_PROP_KEY);
- return "true".equals(isActiveStr);
- }
- return false;
- }
-
- public static boolean isServiceNameValid(CloudServicesDescConfig cloudServicesDesc,
- String cloudServiceName) {
- if(cloudServiceName == null) {
- return false;
- }
- java.util.Collection<CloudServiceConfig> cloudServiceConfigList =
- cloudServicesDesc.getCloudServiceConfigs().values();
- if (cloudServiceName.equals(StratosConstants.CLOUD_MANAGER_SERVICE)) {
- return false;
- }
- for (CloudServiceConfig cloudServiceConfig : cloudServiceConfigList) {
- if (cloudServiceConfig.getName().equals(cloudServiceName)) {
- return true;
- }
- }
- return false;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/bff2da51/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/CommonUtil.java
----------------------------------------------------------------------
diff --git a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/CommonUtil.java b/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/CommonUtil.java
deleted file mode 100644
index 3e3b794..0000000
--- a/components/stratos/org.wso2.carbon.stratos.common/2.1.0/src/main/java/org/wso2/carbon/stratos/common/util/CommonUtil.java
+++ /dev/null
@@ -1,620 +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.stratos.common.util;
-
-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.CarbonConstants;
-import org.wso2.carbon.stratos.common.constants.StratosConstants;
-import org.wso2.carbon.stratos.common.internal.CloudCommonServiceComponent;
-import org.wso2.carbon.registry.core.ActionConstants;
-import org.wso2.carbon.registry.core.RegistryConstants;
-import org.wso2.carbon.registry.core.Resource;
-import org.wso2.carbon.registry.core.exceptions.RegistryException;
-import org.wso2.carbon.registry.core.session.UserRegistry;
-import org.wso2.carbon.registry.core.utils.AccessControlConstants;
-import org.wso2.carbon.user.api.RealmConfiguration;
-import org.wso2.carbon.user.core.AuthorizationManager;
-import org.wso2.carbon.user.core.UserRealm;
-import org.wso2.carbon.user.core.UserStoreException;
-import org.wso2.carbon.user.core.tenant.TenantManager;
-import org.wso2.carbon.utils.CarbonUtils;
-import org.wso2.carbon.utils.multitenancy.MultitenantConstants;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.text.DateFormat;
-import java.text.DateFormatSymbols;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.Iterator;
-import java.util.regex.Pattern;
-
-/**
- * Common Utility methods for Stratos.
- * Now this class has been growing with several util methods - Should refactor accordingly.
- */
-public class CommonUtil {
- private static final Log log = LogFactory.getLog(CommonUtil.class);
- private static StratosConfiguration stratosConfig;
- private static String eula;
-
-
- private static final String ILLEGAL_CHARACTERS_FOR_EMAIL =
- ".*[\\(\\)\\<\\>\\,\\;\\:\\\\\\\"\\[\\]].*";
- private static final String EMAIL_FILTER_STRING = "^[^@]+@[^@.]+\\.[^@]*\\w\\w$";
- private static Pattern emailFilterPattern = Pattern.compile(EMAIL_FILTER_STRING);
- private static Pattern illegalCharactersPatternForEmail = Pattern
- .compile(ILLEGAL_CHARACTERS_FOR_EMAIL);
-
- public static StratosConfiguration getStratosConfig() {
- return stratosConfig;
- }
-
- public static void setStratosConfig(StratosConfiguration stratosConfig) {
- CommonUtil.stratosConfig = stratosConfig;
- }
-
- public static String getEula() {
- return eula;
- }
-
- public static void setEula(String eula) {
- CommonUtil.eula = eula;
- }
-
- /**
- * Checks whether the email validation is mandatory from the configuration file.
- *
- * @return true, if the email validation is mandatory to login. Default is false.
- */
- public static boolean isEmailValidationMandatory() {
- boolean isEmailValidationMandatory = false; //false by default.
- if (stratosConfig != null) { //make sure the configuration exists.
- isEmailValidationMandatory = stratosConfig.getEmailValidationRequired();
- }
- return isEmailValidationMandatory;
- }
-
- /**
- * Checks whether the email sending is enabled from the configuration file.
- *
- * @return true, if the email sending is disabled. By default, this is disabled, and tenant
- * activation is done without any email sending.
- */
- public static boolean isTenantManagementEmailsDisabled() {
- boolean isEmailsDisabled = true; //true by default.
- if (stratosConfig != null) { //make sure the configuration exists.
- isEmailsDisabled = stratosConfig.isEmailsDisabled();
- }
- return isEmailsDisabled;
- }
-
- public static String getSuperAdminEmail() {
- return stratosConfig.getSuperAdminEmail();
- }
-
- public static String getAdminUserName() {
- return stratosConfig.getAdminUserName();
- }
-
- public static String getAdminPassword() {
- return stratosConfig.getAdminPassword();
- }
-
- public static boolean isTenantActivationModerated() {
- return stratosConfig.isTenantActivationModerated();
- }
-
- public static boolean isChargedOnRegistration() {
- return stratosConfig.isChargeOnRegistration();
- }
-
- /**
- * Checks whether it is for the public cloud setup or Mars.
- *
- * @return true, if it is not for the private cloud setups. Default is true.
- */
- public static boolean isPublicCloudSetup() {
- boolean isPublicCloudSetup = true; // true by default.
- if (stratosConfig != null) { //make sure the configuration exists.
- isPublicCloudSetup = stratosConfig.isPublicCloudSetup();
- }
- return isPublicCloudSetup;
- }
-
- /**
- * Gets the notification email address of the admin upon the tenant creation.
- *
- * @return notification email address for the tenant creations.
- */
- public static String getNotificationEmailAddress() {
- String notificationEmailAddress = "";
- if (stratosConfig != null) {
- notificationEmailAddress = stratosConfig.getNotificationEmail();
- try {
- validateEmail(notificationEmailAddress);
- } catch (Exception e) {
- if (log.isWarnEnabled()) {
- log.warn("Invalid Email Address provided for tenant creation notification. " +
- "Please check whether the parameter NotificationEmail" +
- " is set properly in " +
- StratosConstants.STRATOS_CONF_FILE, e);
- }
- return "";
- }
- }
- return notificationEmailAddress;
- }
-
- public static String getMonthString(Calendar calendar) {
- int currentMonth = calendar.get(Calendar.MONTH);
-
- String[] monthArr = new DateFormatSymbols().getMonths();
- String month = monthArr[currentMonth];
- return calendar.get(Calendar.YEAR) + "-" + month;
- }
-
- public static String getMonthString(int relativeMonth) {
- Calendar newCalendar = Calendar.getInstance();
- newCalendar.add(Calendar.MONTH, relativeMonth);
-
- return CommonUtil.getMonthString(newCalendar);
- }
-
- public static Date getDateFromMonthString(String yearMonth) throws ParseException {
- DateFormat yearMonthFormat = new SimpleDateFormat("yyyy-MMM");
- return yearMonthFormat.parse(yearMonth);
- }
-
- public static String getCurrentMonthString() {
- Calendar newCalendar = Calendar.getInstance();
-
- return CommonUtil.getMonthString(newCalendar);
- }
-
-
- public static void setAnonAuthorization(String path, UserRealm userRealm)
- throws RegistryException {
-
- if (userRealm == null) {
- return;
- }
-
- try {
- AuthorizationManager accessControlAdmin = userRealm.getAuthorizationManager();
- String everyoneRole = CarbonConstants.REGISTRY_ANONNYMOUS_ROLE_NAME;
-
- accessControlAdmin.authorizeRole(everyoneRole, path, ActionConstants.GET);
- accessControlAdmin.denyRole(everyoneRole, path, ActionConstants.PUT);
- accessControlAdmin.denyRole(everyoneRole, path, ActionConstants.DELETE);
- accessControlAdmin.denyRole(everyoneRole, path, AccessControlConstants.AUTHORIZE);
-
- } catch (UserStoreException e) {
- String msg = "Could not set authorizations for the " + path + ".";
- log.error(msg, e);
- throw new RegistryException(msg);
- }
- }
-
- public static void denyAnonAuthorization(String path, UserRealm userRealm)
- throws RegistryException {
- if (userRealm == null) {
- return;
- }
-
- try {
- AuthorizationManager accessControlAdmin = userRealm.getAuthorizationManager();
- RealmConfiguration realmConfig;
- try {
- realmConfig = userRealm.getRealmConfiguration();
- } catch (UserStoreException e) {
- String msg = "Failed to retrieve realm configuration.";
- log.error(msg, e);
- throw new RegistryException(msg, e);
- }
-
- String everyoneRole = realmConfig.getEveryOneRoleName();
-
- accessControlAdmin.denyRole(everyoneRole, path, ActionConstants.GET);
- accessControlAdmin.denyRole(everyoneRole, path, ActionConstants.PUT);
- accessControlAdmin.denyRole(everyoneRole, path, ActionConstants.DELETE);
- accessControlAdmin.denyRole(everyoneRole, path, AccessControlConstants.AUTHORIZE);
-
- } catch (UserStoreException e) {
- String msg = "Could not clear authorizations for the " + path + ".";
- log.error(msg, e);
- throw new RegistryException(msg);
- }
- }
-
- /**
- * builds the OMElement from the given inputStream
- *
- * @param inputStream, given input - inputStream
- * @return OMElement
- * @throws Exception, if building OMElement from the inputStream failed.
- */
- public static OMElement buildOMElement(InputStream inputStream) throws Exception {
- 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 Exception(msg, e);
- }
-
- // create the builder
- StAXOMBuilder builder = new StAXOMBuilder(parser);
- // get the root element (in this case the envelope)
-
- return builder.getDocumentElement();
- }
-
-
- /**
- * validates the email
- *
- * @param email - email address
- * @throws Exception, if validation failed
- */
- public static void validateEmail(String email) throws Exception {
- if (email == null) {
- String msg = "Provided email value is null.";
- log.warn(msg);
- throw new Exception(msg);
- }
- email = email.trim();
- if ("".equals(email)) {
- String msg = "Provided email value is empty.";
- log.warn(msg);
- throw new Exception(msg);
- }
- if (illegalCharactersPatternForEmail.matcher(email).matches()) {
- String msg = "Wrong characters in the email.";
- log.error(msg);
- throw new Exception(msg);
- }
- if (!emailFilterPattern.matcher(email).matches()) {
- String msg = "Invalid email address is provided.";
- log.error(msg);
- throw new Exception(msg);
- }
- }
-
- /**
- * @param name validate the name.
- * @param variable entry name.
- * @throws Exception if empty
- */
- public static void validateName(String name, String variable) throws Exception {
- if (name.trim().equals("")) {
- String msg = variable + " is not provided.";
- log.error(msg);
- throw new Exception(msg);
- }
- }
-
- /**
- * validates domain from the successkey
- *
- * @param governanceSystemRegistry - The governance system registry
- * @param domain - tenant domain
- * @param successKey - successkey
- * @return true, if successfully validated
- * @throws RegistryException, if validation failed
- */
- public static boolean validateDomainFromSuccessKey(UserRegistry governanceSystemRegistry,
- String domain, String successKey)
- throws RegistryException {
- String domainValidatorInfoPath =
- StratosConstants.DOMAIN_VALIDATOR_INFO_PATH + RegistryConstants.PATH_SEPARATOR +
- domain + RegistryConstants.PATH_SEPARATOR +
- StratosConstants.VALIDATION_KEY_RESOURCE_NAME;
- if (governanceSystemRegistry.resourceExists(domainValidatorInfoPath)) {
- Resource resource = governanceSystemRegistry.get(domainValidatorInfoPath);
- String actualSuccessKey = resource.getProperty("successKey");
- if (actualSuccessKey != null && successKey != null &&
- actualSuccessKey.trim().equals(successKey.trim())) {
- // the domain is correct
- return true;
- }
- }
- return false;
- }
-
- /**
- * Returns the configurations from the stratos configuration file.
- *
- * @return stratos configurations
- */
- public static StratosConfiguration loadStratosConfiguration() {
- // gets the configuration file name from the StratosConstants.
- String StratosConfigFileName = CarbonUtils.getCarbonConfigDirPath() + File.separator +
- StratosConstants.MULTITENANCY_CONFIG_FOLDER + File.separator +
- StratosConstants.STRATOS_CONF_FILE;
- return loadStratosConfiguration(StratosConfigFileName);
- }
-
- /**
- * Loads the given Stratos Configuration file.
- *
- * @param configFilename Name of the configuration file
- * @return the stratos configuration data.
- */
- private static StratosConfiguration loadStratosConfiguration(String configFilename) {
- StratosConfiguration config = new StratosConfiguration();
- File configFile = new File(configFilename);
- if (configFile.exists()) {
- FileInputStream inputStream = null;
- try {
- inputStream = new FileInputStream(configFile);
- XMLStreamReader parser =
- XMLInputFactory.newInstance().createXMLStreamReader(inputStream);
- StAXOMBuilder builder = new StAXOMBuilder(parser);
- OMElement documentElement = builder.getDocumentElement();
- Iterator it = documentElement.getChildElements();
- while (it.hasNext()) {
- OMElement element = (OMElement) it.next();
-
- if ("DisableTenantManagementEmails".equals(element.getLocalName())) {
- String disableEmails = element.getText();
- // by default, make the email validation mandatory.
- boolean isEmailsDisabled = true;
- if (disableEmails.trim().equalsIgnoreCase("false")) {
- isEmailsDisabled = false;
- }
- config.setEmailsDisabled(isEmailsDisabled);
- }
- // Checks whether Email Validation is mandatory to log in and use the registered
- // tenants.
- else if ("EmailValidationMandatoryForLogin".equals(element.getLocalName())) {
- String emailValidation = element.getText();
- //by default, make the email validation not mandatory.
- boolean isEmailValidationRequired = false;
- if (emailValidation.trim().equalsIgnoreCase("true")) {
- isEmailValidationRequired = true;
- }
- config.setEmailValidationRequired(isEmailValidationRequired);
- } else if ("ChargeOnRegistration".equals(element.getLocalName())) {
- String chargeOnRegistration = element.getText();
- boolean isChargedOnRegistration = false;
- if (chargeOnRegistration.trim().equalsIgnoreCase("true")) {
- isChargedOnRegistration = true;
- }
- config.setChargeOnRegistration(isChargedOnRegistration);
- } else if ("NotificationEmail".equals(element.getLocalName())) {
- config.setNotificationEmail(element.getText());
- } else if ("SuperAdminEmail".equals(element.getLocalName())) {
- config.setSuperAdminEmail(element.getText());
- } else if ("TenantActivationModerated".equals(element.getLocalName())){
- String isTenantActivationModerated = element.getText();
- boolean tenantActivationModerated = false;
- if (isTenantActivationModerated.trim().equalsIgnoreCase("true")) {
- tenantActivationModerated = true;
- }
- config.setTenantActivationModerated(tenantActivationModerated);
- }
- //Checks whether it is public cloud deployment.
- else if ("StratosPublicCloudSetup".equals(element.getLocalName())) {
- String cloudSetup = element.getText();
- //by default, make the email validation mandatory.
- boolean isStratosPublicCloudSetup = true;
- if (cloudSetup.trim().equalsIgnoreCase("false")) {
- isStratosPublicCloudSetup = false;
- }
- config.setPublicCloudSetup(isStratosPublicCloudSetup);
- //Setting the paypal url
- } else if ("PaypalUrl".equals(element.getLocalName())) {
- String paypalUrl = element.getText();
- config.setPaypalUrl(paypalUrl);
- } else if ("SkipSummaryGenerator".equals(element.getLocalName())) {
- String summaryGenerator = element.getText();
- boolean skipSummaryGenerator = false;
- if (summaryGenerator.trim().equalsIgnoreCase("true")) {
- skipSummaryGenerator = true;
- }
- config.setSkipSummaryGenerator(skipSummaryGenerator);
- }
- else if ("PaypalAPIUsername".equals(element.getLocalName())) {
- config.setPaypalAPIUsername(element.getText());
- } else if ("PaypalAPIPassword".equals(element.getLocalName())) {
- config.setPaypalAPIPassword(element.getText());
- } else if ("PaypalAPISignature".equals(element.getLocalName())) {
- config.setPaypalAPISignature(element.getText());
- }else if ("PaypalEnvironment".equals(element.getLocalName())){
- config.setPaypalEnvironment(element.getText());
- }else if("FinanceNotificationEmail".equals(element.getLocalName())){
- config.setFinanceNotificationEmail(element.getText());
- }else if("UsagePlanUrl".equals(element.getLocalName())){
- config.setUsagePlanURL(element.getText());
- }else if("PaidJIRAUrl".equals(element.getLocalName())) {
- config.setPaidJIRAUrl(element.getText());
- }else if("PaidJIRAProject".equals(element.getLocalName())) {
- config.setPaidJIRAProject(element.getText());
- }else if("ForumUrl".equals(element.getLocalName())) {
- config.setForumUrl(element.getText());
- }else if("PaidUserGroup".equals(element.getLocalName())) {
- config.setPaidUserGroup(element.getText());
- }else if("NonpaidUserGroup".equals(element.getLocalName())) {
- config.setNonpaidUserGroup(element.getText());
- } else if("SupportInfoUrl".equals(element.getLocalName())) {
- config.setSupportInfoUrl(element.getText());
- }else if("IncidentCustomFieldId".equals(element.getLocalName())) {
- config.setIncidentCustomFieldId(element.getText());
- } else if("IncidentImpactCustomFieldId".equals(element.getLocalName())) {
- config.setIncidentImpactCustomFieldId(element.getText());
- } else if ("GoogleAnalyticsURL".equals(element.getLocalName())) {
- config.setGoogleAnalyticsURL(element.getText());
- } else if("StratosEventListener".equals(element.getLocalName())) {
- populateEventListenerProperties(config, element);
- } else if ("managerServiceUrl".equals(element.getLocalName())) {
- config.setManagerServiceUrl(element.getText());
- } else if ("adminUserName".equals(element.getLocalName())) {
- config.setAdminUserName(element.getText());
- } else if ("adminPassword".equals(element.getLocalName())) {
- config.setAdminPassword(element.getText());
- } else if("SSOLoadingMessage".equals(element.getLocalName())){
- config.setSsoLoadingMessage(element.getText());
- }
- }
- return config;
- } catch (Exception e) {
- String msg = "Error in loading Stratos Configurations File: " + configFilename + ".";
- log.error(msg, e);
- return config; //returns the default configurations, if the file could not be loaded.
- } finally {
- if (inputStream != null) {
- try {
- inputStream.close();
- } catch (IOException e) {
- log.error("Could not close the Configuration File " + configFilename);
- }
- }
- }
- }
- log.error("Unable to locate the stratos configurations file. " +
- "Default Settings will be used.");
- return config; // return the default configuratiosn, if the file not found.
- }
-
-
- private static void populateEventListenerProperties(StratosConfiguration config,
- OMElement element) throws RegistryException {
- config.setStratosEventListenerName(element.getAttributeValue(new QName("class")));
- Iterator<?> ite =
- element.getChildrenWithName(new QName("Property"));
- while (ite.hasNext()) {
- OMElement propElem = (OMElement) ite.next();
- String propName = propElem.getAttributeValue(new QName("name"));
- String propValue = propElem.getText();
- config.setStratosEventListenerProperty(propName, propValue);
- }
- }
-
- /**
- * Loading the EULA.
- * ultimately we shall be loading the eula from the web page itself.
- * But loading from file should be there to customize the EULA based on the private deployments,
- * etc.
- *
- * @return eula
- */
- public static String loadTermsOfUsage() {
- // currently loads from the file; gets the eula file name from the StratosConstants.
- String StratosEULAFileName = CarbonUtils.getCarbonConfigDirPath() + File.separator +
- StratosConstants.MULTITENANCY_CONFIG_FOLDER + File.separator +
- StratosConstants.STRATOS_EULA;
- return loadTermsOfUsage(StratosEULAFileName);
- }
-
- private static String loadTermsOfUsage(String eulaFile) {
- String eula = StratosConstants.STRATOS_EULA_DEFAULT_TEXT;
- File configFile = new File(eulaFile);
- if (configFile.exists()) {
- FileInputStream inputStream = null;
- try {
- inputStream = new FileInputStream(configFile);
- XMLStreamReader parser =
- XMLInputFactory.newInstance().createXMLStreamReader(inputStream);
- StAXOMBuilder builder = new StAXOMBuilder(parser);
- OMElement documentElement = builder.getDocumentElement();
- Iterator it = documentElement.getChildElements();
- while (it.hasNext()) {
- OMElement element = (OMElement) it.next();
-
- //Checks whether Email Validation is mandatory for tenant registration complete.
- if ("EULA".equalsIgnoreCase(element.getLocalName())) {
- eula = element.getText();
- }
- }
- return eula;
- } catch (Exception e) {
- String msg = "Error in loading Stratos Terms and Conditions File.";
- log.error(msg, e);
- return eula; //returns the default text, if the file could not be loaded.
- } finally {
- if (inputStream != null) {
- try {
- inputStream.close();
- } catch (IOException e) {
- log.error("Could not close the EULA File " + eulaFile);
- }
- }
- }
- }
- if (log.isDebugEnabled()) {
- log.debug("Unable to locate the stratos EULA file. Default value will be used.");
- }
- return eula; // return the default, if the file not found.
- }
-
-
- /**
- * method to check whether a domain name is available to register given a domain name
- * @param tenantDomain, domain name
- * @return true, if the domain is available to register
- * @throws Exception, if checking the existence of the tenant is failed.
- */
- public static boolean isDomainNameAvailable(String tenantDomain) throws Exception {
-
- TenantManager tenantManager = CloudCommonServiceComponent.getTenantManager();
- // The registry reserved words are checked first.
- if (tenantDomain.equals("atom") || tenantDomain.equals("registry")
- || tenantDomain.equals("resource")) {
- String msg = "You can not use a registry reserved word:" + tenantDomain +
- ":as a tenant domain. Please choose a different one.";
- log.error(msg);
- throw new Exception(msg);
- }
-
- int tenantId;
- try {
- tenantId = tenantManager.getTenantId(tenantDomain);
- } catch (UserStoreException e) {
- String msg = "Error in getting the tenant id for the given domain " +
- tenantDomain + ".";
- log.error(msg);
- throw new Exception(msg, e);
- }
-
- // check a tenant with same domain exist.
- if ((tenantId != MultitenantConstants.INVALID_TENANT_ID && tenantId != MultitenantConstants.SUPER_TENANT_ID) ||
- tenantDomain.equals(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME)) {
- String msg =
- "A tenant with same domain already exist. " +
- "Please use a different domain name. tenant domain: " +
- tenantDomain + ".";
- log.info(msg);
- return false;
- }
- return true;
- }
-}
-
-
-