All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.marketcetera.admin.provisioning.AdminConfiguration Maven / Gradle / Ivy

The newest version!
package org.marketcetera.admin.provisioning;

import java.util.List;
import java.util.Set;

import javax.annotation.PostConstruct;

import org.marketcetera.util.log.SLF4JLoggerProxy;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

import com.google.common.collect.Lists;
import com.google.common.collect.Sets;

/* $License$ */

/**
 * Enables user configuration from properties.
 *
 * @author Colin DuPlantis
 * @version $Id$
 * @since $Release$
 */
@Configuration
@EnableAutoConfiguration
@ConfigurationProperties("admin")
public class AdminConfiguration
{
    /**
     * Validate and start the object. 
     */
    @PostConstruct
    public void start()
    {
        SLF4JLoggerProxy.debug(this,
                               "Provisioning users: {} permissions: {} roles: {} supervisor permissions: {}",
                               users,
                               permissions,
                               roles,
                               supervisorPermissions);
    }
    /**
     * Get the users value.
     *
     * @return a List<User> value
     */
    public List getUsers()
    {
        return users;
    }
    /**
     * Sets the users value.
     *
     * @param inUsers a List<User> value
     */
    public void setUsers(List inUsers)
    {
        users = inUsers;
    }
    /**
     * Get the roles value.
     *
     * @return a List<Role> value
     */
    public List getRoles()
    {
        return roles;
    }
    /**
     * Sets the roles value.
     *
     * @param inRoles a List<Role> value
     */
    public void setRoles(List inRoles)
    {
        roles = inRoles;
    }
    /**
     * Get the permissions value.
     *
     * @return a List<Permission> value
     */
    public List getPermissions()
    {
        return permissions;
    }
    /**
     * Sets the permissions value.
     *
     * @param inPermissions a List<Permission> value
     */
    public void setPermissions(List inPermissions)
    {
        permissions = inPermissions;
    }
    /**
     * Get the supervisorPermissions value.
     *
     * @return a List<SupervisorPermission> value
     */
    public List getSupervisorPermissions()
    {
        return supervisorPermissions;
    }
    /**
     * Sets the supervisorPermissions value.
     *
     * @param inSupervisorPermissions a List<SupervisorPermission> value
     */
    public void setSupervisorPermissions(List inSupervisorPermissions)
    {
        supervisorPermissions = inSupervisorPermissions;
    }
    /**
     * Describes a permission.
     *
     * @author Colin DuPlantis
     * @version $Id$
     * @since $Release$
     */
    public static class Permission
    {
        /* (non-Javadoc)
         * @see java.lang.Object#toString()
         */
        @Override
        public String toString()
        {
            StringBuilder builder = new StringBuilder();
            builder.append("Permission [name=").append(name).append(", description=").append(description).append("]");
            return builder.toString();
        }
        /**
         * Get the name value.
         *
         * @return a String value
         */
        public String getName()
        {
            return name;
        }
        /**
         * Sets the name value.
         *
         * @param inName a String value
         */
        public void setName(String inName)
        {
            name = inName;
        }
        /**
         * Get the description value.
         *
         * @return a String value
         */
        public String getDescription()
        {
            return description;
        }
        /**
         * Sets the description value.
         *
         * @param inDescription a String value
         */
        public void setDescription(String inDescription)
        {
            description = inDescription;
        }
        /**
         * name value
         */
        private String name;
        /**
         * description value
         */
        private String description;
    }
    /**
     * Describes a role.
     *
     * @author Colin DuPlantis
     * @version $Id$
     * @since $Release$
     */
    public static class Role
    {
        /* (non-Javadoc)
         * @see java.lang.Object#toString()
         */
        @Override
        public String toString()
        {
            StringBuilder builder = new StringBuilder();
            builder.append("Role [name=").append(name).append(", description=").append(description).append(", users=")
                    .append(users).append(", permissions=").append(permissions).append("]");
            return builder.toString();
        }
        /**
         * Get the name value.
         *
         * @return a String value
         */
        public String getName()
        {
            return name;
        }
        /**
         * Sets the name value.
         *
         * @param inName a String value
         */
        public void setName(String inName)
        {
            name = inName;
        }
        /**
         * Get the description value.
         *
         * @return a String value
         */
        public String getDescription()
        {
            return description;
        }
        /**
         * Sets the description value.
         *
         * @param inDescription a String value
         */
        public void setDescription(String inDescription)
        {
            description = inDescription;
        }
        /**
         * Get the users value.
         *
         * @return a Set<String> value
         */
        public Set getUsers()
        {
            return users;
        }
        /**
         * Sets the users value.
         *
         * @param inUsers a Set<String> value
         */
        public void setUsers(Set inUsers)
        {
            users = inUsers;
        }
        /**
         * Get the permissions value.
         *
         * @return a Set<String> value
         */
        public Set getPermissions()
        {
            return permissions;
        }
        /**
         * Sets the permissions value.
         *
         * @param inPermissions a Set<String> value
         */
        public void setPermissions(Set inPermissions)
        {
            permissions = inPermissions;
        }
        /**
         * name value
         */
        private String name;
        /**
         * description value
         */
        private String description;
        /**
         * users value
         */
        private Set users = Sets.newHashSet();
        /**
         * permissions value
         */
        private Set permissions = Sets.newHashSet();
    }
    /**
     * Describes a user.
     *
     * @author Colin DuPlantis
     * @version $Id$
     * @since $Release$
     */
    public static class User
    {
        /* (non-Javadoc)
         * @see java.lang.Object#toString()
         */
        @Override
        public String toString()
        {
            StringBuilder builder = new StringBuilder();
            builder.append("User [name=").append(name).append(", description=").append(description)
                    .append(", isActive=").append(isActive).append("]");
            return builder.toString();
        }
        /**
         * Get the name value.
         *
         * @return a String value
         */
        public String getName()
        {
            return name;
        }
        /**
         * Sets the name value.
         *
         * @param inName a String value
         */
        public void setName(String inName)
        {
            name = inName;
        }
        /**
         * Get the description value.
         *
         * @return a String value
         */
        public String getDescription()
        {
            return description;
        }
        /**
         * Sets the description value.
         *
         * @param inDescription a String value
         */
        public void setDescription(String inDescription)
        {
            description = inDescription;
        }
        /**
         * Get the password value.
         *
         * @return a String value
         */
        public String getPassword()
        {
            return password;
        }
        /**
         * Sets the password value.
         *
         * @param inPassword a String value
         */
        public void setPassword(String inPassword)
        {
            password = inPassword;
        }
        /**
         * Get the isActive value.
         *
         * @return a boolean value
         */
        public boolean getIsActive()
        {
            return isActive;
        }
        /**
         * Sets the isActive value.
         *
         * @param inIsActive a boolean value
         */
        public void setIsActive(boolean inIsActive)
        {
            isActive = inIsActive;
        }
        /**
         * name value
         */
        private String name;
        /**
         * description value
         */
        private String description;
        /**
         * password value
         */
        private String password;
        /**
         * is active value
         */
        private boolean isActive = true;
    }
    /**
     * Defines a supervisor permission.
     *
     * @author Colin DuPlantis
     * @version $Id$
     * @since $Release$
     */
    public static class SupervisorPermission
    {
        /* (non-Javadoc)
         * @see java.lang.Object#toString()
         */
        @Override
        public String toString()
        {
            StringBuilder builder = new StringBuilder();
            builder.append("SupervisorPermission [name=").append(name).append(", description=").append(description)
                    .append(", supervisorName=").append(supervisorName).append(", permissions=").append(permissions)
                    .append(", subjectNames=").append(subjectNames).append("]");
            return builder.toString();
        }
        /**
         * Get the name value.
         *
         * @return a String value
         */
        public String getName()
        {
            return name;
        }
        /**
         * Sets the name value.
         *
         * @param inName a String value
         */
        public void setName(String inName)
        {
            name = inName;
        }
        /**
         * Get the description value.
         *
         * @return a String value
         */
        public String getDescription()
        {
            return description;
        }
        /**
         * Sets the description value.
         *
         * @param inDescription a String value
         */
        public void setDescription(String inDescription)
        {
            description = inDescription;
        }
        /**
         * Get the supervisorName value.
         *
         * @return a String value
         */
        public String getSupervisorName()
        {
            return supervisorName;
        }
        /**
         * Sets the supervisorName value.
         *
         * @param inSupervisorName a String value
         */
        public void setSupervisorName(String inSupervisorName)
        {
            supervisorName = inSupervisorName;
        }
        /**
         * Get the permissions value.
         *
         * @return a Set<String> value
         */
        public Set getPermissions()
        {
            return permissions;
        }
        /**
         * Sets the permissions value.
         *
         * @param inPermissions a Set<String> value
         */
        public void setPermissions(Set inPermissions)
        {
            permissions = inPermissions;
        }
        /**
         * Get the subjectNames value.
         *
         * @return a Set<String> value
         */
        public Set getSubjectNames()
        {
            return subjectNames;
        }
        /**
         * Sets the subjectNames value.
         *
         * @param inSubjectNames a Set<String> value
         */
        public void setSubjectNames(Set inSubjectNames)
        {
            subjectNames = inSubjectNames;
        }
        /**
         * name value
         */
        private String name;
        /**
         * description value
         */
        private String description;
        /**
         * defines the supervisor user name
         */
        private String supervisorName;
        /**
         * permissions granted to the supervisor
         */
        private Set permissions = Sets.newHashSet();
        /**
         * permissions granted to the supervisor over the given users
         */
        private Set subjectNames = Sets.newHashSet();
    }
    /**
     * users value
     */
    private List users = Lists.newArrayList();
    /**
     * roles value
     */
    private List roles = Lists.newArrayList();
    /**
     * permissions value
     */
    private List permissions = Lists.newArrayList();
    /**
     * supervisor permissions value
     */
    private List supervisorPermissions = Lists.newArrayList();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy