Examples of AdminManagementSubscriber


Examples of org.wso2.carbon.admin.mgt.util.AdminManagementSubscriber

        }
    }

    public void start(BundleContext context) {
        // Registering the AdminManagement Service as an OSGi Service
        AdminManagementSubscriber verifier = new AdminManagementSubscriber();
        context.registerService(AdminManagementSubscriber.class.getName(), verifier, null);
    }
View Full Code Here

Examples of org.wso2.carbon.admin.mgt.util.AdminManagementSubscriber

     * @param tenantInfoBean tenant details
     * @return true if the reset request is processed successfully.
     * @throws Exception if reset password failed.
     */
    public static boolean resetPassword(TenantInfoBean tenantInfoBean) throws Exception {
        AdminManagementSubscriber adminMgtSubscriber = new AdminManagementSubscriber();
        String adminName = tenantInfoBean.getAdmin();
        String domainName = tenantInfoBean.getTenantDomain();

        TenantManager tenantManager = TenantMgtServiceComponent.getTenantManager();
        int tenantId = tenantManager.getTenantId(domainName);

        if (tenantId < 1) {
            String msg = "Tenant with the domain " + domainName + " doesn't exist.";
            log.error(msg);
            return false; // tenant doesn't exist
        }

        Tenant tenant = (Tenant) tenantManager.getTenant(tenantId);
        String email = tenant.getEmail();

        String adminNameFromUserStore = ClaimsMgtUtil.getAdminUserNameFromTenantId(
                TenantMgtServiceComponent.getRealmService(), tenantId);
        // Admin Name is included in the email, in case if the user has
        // forgotten that.
        if (adminName.equals("")) {
            log.debug("User provided only the domain name");
            adminName = adminNameFromUserStore;
        } else if (!(adminNameFromUserStore.equalsIgnoreCase(adminName))) {
            log.warn("User provided incorrect admin name. Admin Name is: " +
                     adminNameFromUserStore);
            adminName = adminNameFromUserStore;
        }

        // generating the confirmation key
        String confirmationKey = UUIDGenerator.generateUUID();
        UserRegistry superTenantGovernanceSystemRegistry =
                TenantMgtServiceComponent.getGovernanceSystemRegistry(
                        MultitenantConstants.SUPER_TENANT_ID);

        Resource resource;
        String adminManagementPath = StratosConstants.ADMIN_MANAGEMENT_FLAG_PATH +
                                     RegistryConstants.PATH_SEPARATOR + tenantId;

        if (superTenantGovernanceSystemRegistry.resourceExists(adminManagementPath)) {
            resource = superTenantGovernanceSystemRegistry.get(adminManagementPath);
        } else {
            resource = superTenantGovernanceSystemRegistry.newResource();
        }
        resource.setContent(confirmationKey);
        superTenantGovernanceSystemRegistry.put(adminManagementPath, resource);

        // data map
        Map<String, String> dataToStore = new HashMap<String, String>();
        dataToStore.put("email", email);
        dataToStore.put("first-name", ClaimsMgtUtil.getFirstName(
                TenantMgtServiceComponent.getRealmService(), tenant, tenantId));
        dataToStore.put("admin", adminName);
        dataToStore.put("tenantDomain", tenantInfoBean.getTenantDomain());
        dataToStore.put("confirmationKey", confirmationKey);

        try {
            // Uses admin-mgt component to handle the admin credentials
            // management.
            adminMgtSubscriber.requestUserVerification(dataToStore);
            log.info("Credentials Configurations mail has been sent for: " + domainName);
            return true;
        } catch (Exception e) {
            String msg = "Error in verifying the user for the configuration of the admin " +
                         "management for " + domainName + ".";
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.