Package org.apache.james.remotemanager

Examples of org.apache.james.remotemanager.RemoteManagerResponse


    /*
     * (non-Javadoc)
     * @see org.apache.james.protocols.api.CommandHandler#onCommand(org.apache.james.protocols.api.ProtocolSession, org.apache.james.protocols.api.Request)
     */
    public Response onCommand(RemoteManagerSession session, Request request) {
        RemoteManagerResponse response;
        String parameters = request.getArgument();
        UsersRepository users = uStore.getRepository(((String) session.getState().get(RemoteManagerSession.CURRENT_USERREPOSITORY)));

        if (parameters == null) {
            response = new RemoteManagerResponse("Existing accounts " + users.countUsers());
            for (Iterator<String> it = users.list(); it.hasNext();) {
                response.appendLine("user: " + it.next());
            }
            return response;
        } else {
            if(mailServer.supportVirtualHosting() == false) {
                response = new RemoteManagerResponse("Virtualhosting not supported");
                return response;
            }
       
            ArrayList<String> userList = getDomainUserList(users,parameters);
            response = new RemoteManagerResponse("Existing accounts from domain " + parameters + " " + userList.size());
            for (int i = 0; i <userList.size(); i++) {
                response.appendLine("user: " + userList.get(i));
            }
            return response;
        }       
    }
View Full Code Here


    /*
     * (non-Javadoc)
     * @see org.apache.james.protocols.api.CommandHandler#onCommand(org.apache.james.protocols.api.ProtocolSession, org.apache.james.protocols.api.Request)
     */
    public Response onCommand(RemoteManagerSession session, Request request) {
        RemoteManagerResponse response = new RemoteManagerResponse("Unknown command " + request.getCommand());
        return response;
    }
View Full Code Here

    /*
     * (non-Javadoc)
     * @see org.apache.james.protocols.api.CommandHandler#onCommand(org.apache.james.protocols.api.ProtocolSession, org.apache.james.protocols.api.Request)
     */
    public Response onCommand(RemoteManagerSession session, Request request) {
        RemoteManagerResponse response;
        String user = request.getArgument();
        if ((user == null) || (user.equals(""))) {

            response = new RemoteManagerResponse("Usage: " + help.getSyntax());
            return response;
        } else {
            UsersRepository users = uStore.getRepository(((String) session.getState().get(RemoteManagerSession.CURRENT_USERREPOSITORY)));
            if (users.contains(user)) {
                try {
                    users.removeUser(user);
                    StringBuilder responseBuffer = new StringBuilder(64).append("User ").append(user).append(" deleted");
                    String responseString = responseBuffer.toString();
                    response = new RemoteManagerResponse(responseString);
                    session.getLogger().info(responseString);
                } catch (Exception e) {         
                    StringBuilder exceptionBuffer = new StringBuilder(128).append("Error deleting user ").append(user).append(" : ").append(e.getMessage());
                    String exception = exceptionBuffer.toString();
                    response = new RemoteManagerResponse(exception);
                    session.getLogger().error(exception,e);
                }
            } else {
                StringBuilder responseBuffer = new StringBuilder(64).append("User ").append(user).append(" doesn't exist");
                String responseString = responseBuffer.toString();
                response = new RemoteManagerResponse(responseString);
            }
        }
        return response;
    }
View Full Code Here

    /*
     * (non-Javadoc)
     * @see org.apache.james.protocols.api.CommandHandler#onCommand(org.apache.james.protocols.api.ProtocolSession, org.apache.james.protocols.api.Request)
     */
    public Response onCommand(RemoteManagerSession session, Request request) {
        RemoteManagerResponse response = null;
        String parameters = request.getArgument();
        int breakIndex = -1;
        if ((parameters == null) ||
            (parameters.equals("")) ||
            ((breakIndex = parameters.indexOf(" ")) < 0)) {
            response = new RemoteManagerResponse("Usage: " + getHelp().getSyntax());
            return response;
        }
        String username = parameters.substring(0,breakIndex);
        String passwd = parameters.substring(breakIndex + 1);
        if (username.equals("") || passwd.equals("")) {
            response = new RemoteManagerResponse("Usage: " + getHelp().getSyntax());
            return response;
        }
        UsersRepository users = uStore.getRepository((String)session.getState().get(RemoteManagerSession.CURRENT_USERREPOSITORY));

        boolean success = false;
        if (users.contains(username)) {
            StringBuilder responseBuffer =
                new StringBuilder(64)
                        .append("User ")
                        .append(username)
                        .append(" already exists");
            response = new RemoteManagerResponse(responseBuffer.toString());
            return response;
        } else {
            if((username.indexOf("@") < 0) == false) {
                if(mailServer.supportVirtualHosting() == false) {
                    response = new RemoteManagerResponse("Virtualhosting not supported");
                    return response;
                }
                String domain = username.split("@")[1];
                if (domList.containsDomain(domain) == false) {
                    response = new RemoteManagerResponse("Domain not exists: " + domain);
                    return response;
                }
            }
            success = users.addUser(username, passwd);
        }
        if ( success ) {
            StringBuilder responseBuffer =
                new StringBuilder(64)
                        .append("User ")
                        .append(username)
                        .append(" added");
            session.getLogger().info(responseBuffer);

            response = new RemoteManagerResponse(responseBuffer.toString());
            return response;
        } else {
            session.getLogger().error("Error adding user " + username);
            response = new RemoteManagerResponse("Error adding user " + username);
            return response;
        }
    }
View Full Code Here

    /*
     * (non-Javadoc)
     * @see org.apache.james.protocols.api.CommandHandler#onCommand(org.apache.james.protocols.api.ProtocolSession, org.apache.james.protocols.api.Request)
     */
    public Response onCommand(RemoteManagerSession session, Request request) {
        RemoteManagerResponse response;
        String[] args = null;
        String parameters = request.getArgument();
       
        if (parameters != null)
            args = parameters.split(" ");

        // check if the command was called correct
        if (args != null && args.length > 0) {
            response = new RemoteManagerResponse("Usage: " + help.getSyntax());
            return response;
        }

        try {
            Map<String,Collection<String>> mappings = vutManagement.getAllMappings();
            if (mappings == null) {
                response = new RemoteManagerResponse("No mappings found");
            } else {
                response = new RemoteManagerResponse("Mappings:");

                Iterator<String> m = mappings.keySet().iterator();
                while (m.hasNext()) {
                    String key = m.next();
                    response.appendLine(key + "  -> " + mappings.get(key));
                }
            }
        } catch (IllegalArgumentException e) {
            session.getLogger().error("Error on listing all mapping: " + e);
            response = new RemoteManagerResponse("Error on listing all mapping: " + e);
        }
        return response;
    }
View Full Code Here

    /*
     * (non-Javadoc)
     * @see org.apache.james.protocols.api.CommandHandler#onCommand(org.apache.james.protocols.api.ProtocolSession, org.apache.james.protocols.api.Request)
     */
    public Response onCommand(RemoteManagerSession session, Request request) {
        RemoteManagerResponse response = null;
       
        String[] domains = domList.getDomains();
        if (domains == null) {
            response = new RemoteManagerResponse("No domains found");
        } else {
            response = new RemoteManagerResponse("Domains:");
               
           
            for(int i = 0; i < domains.length; i++) {
                response.appendLine(domains[i]);
            }
        }  
        return response;
    }
View Full Code Here

        return commands;
    }
   
    @Override
    public Response onCommand(RemoteManagerSession session, Request request) {     
      RemoteManagerResponse response;
        String parameters = request.getArgument();
        UsersRepository users = uStore.getRepository(((String) session.getState().get(RemoteManagerSession.CURRENT_USERREPOSITORY)));
        System.out.println("users " +users);
        if (parameters == null) {
            response = new RemoteManagerResponse("Existing accounts " + users.countUsers());
            return response;
        } else {
            if(mailServer.supportVirtualHosting() == false) {
                response = new RemoteManagerResponse("Virtualhosting not supported");
                return response;
           }
           
           response = new RemoteManagerResponse("Existing accounts for domain " + parameters + " " + getDomainUserList(users,parameters).size());
           return response;
        }
    }
View Full Code Here

    /*
     * (non-Javadoc)
     * @see org.apache.james.api.protocol.CommandHandler#onCommand(org.apache.james.api.protocol.LogEnabledSession, org.apache.james.api.protocol.Request)
     */
    public Response onCommand(RemoteManagerSession session, Request request) {
        RemoteManagerResponse response = null;
        String[] args = null;
        String parameters = request.getArgument();
        if (parameters != null)
            args = parameters.split(" ");

        // check if the command was called correct
        if (parameters == null || parameters.trim().equals("") || args.length != 2) {
            response = new RemoteManagerResponse("Usage: " + help.getSyntax());
        } else {
            try {
                response = new RemoteManagerResponse("Adding mapping successful: " + mappingAction(args, ADD_MAPPING_ACTION));
            } catch (IllegalArgumentException e) {
                session.getLogger().error("Error on adding mapping: " + e);
                response = new RemoteManagerResponse("Error on adding mapping: " + e);
            }
        }

        return response;
    }
View Full Code Here

    /*
     * (non-Javadoc)
     * @see org.apache.james.protocols.api.CommandHandler#onCommand(org.apache.james.protocols.api.ProtocolSession, org.apache.james.protocols.api.Request)
     */
    public Response onCommand(RemoteManagerSession session, Request request) {
        RemoteManagerResponse response;
        String parameters = request.getArgument();
       
        if (parameters == null || parameters.equals("")) {
            response = new RemoteManagerResponse("Usage: " + help.getSyntax());
            return response;
        }
        String repositoryName = parameters.toLowerCase(Locale.US);
        UsersRepository repos = uStore.getRepository(repositoryName);
        if ( repos == null ) {
            response = new RemoteManagerResponse("No such repository: " + repositoryName);
        } else {
            session.getState().put(RemoteManagerSession.CURRENT_USERREPOSITORY,repos);
            StringBuilder responseBuffer =
                new StringBuilder(64)
                        .append("Changed to repository '")
                        .append(repositoryName)
                        .append("'.");
            response = new RemoteManagerResponse(responseBuffer.toString());
        }
        return response;
    }
View Full Code Here

     * @see
     * org.apache.james.remotemanager.ConnectHandler#onConnect(org.apache.james
     * .remotemanager.RemoteManagerSession)
     */
    public void onConnect(RemoteManagerSession session) {
        RemoteManagerResponse response = new RemoteManagerResponse("JAMES Remote Administration Tool ");// +
        // Constants.SOFTWARE_VERSION)
        response.appendLine("Please enter your login and password");
        response.appendLine("Login id:");

        session.writeResponse(response);
        session.pushLineHandler(lineHandler);
        session.getState().put(AUTHORIZATION_STATE, LOGIN_SUPPLIED);
    }
View Full Code Here

TOP

Related Classes of org.apache.james.remotemanager.RemoteManagerResponse

Copyright © 2018 www.massapicom. 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.