Package org.apache.ftpserver.interfaces

Examples of org.apache.ftpserver.interfaces.Command


        assertTrue(command instanceof STOR);
    }

    public void testReturnFromDefaultUnknown() {
        DefaultCommandFactory factory = new DefaultCommandFactory();
        Command command = factory.getCommand("dummy");

        assertNull(command);
    }
View Full Code Here


        DefaultCommandFactory factory = new DefaultCommandFactory();
        Map<String, Command> commands = new HashMap<String, Command>();
        commands.put("stor", new NOOP());
        factory.setCommandMap(commands);

        Command command = factory.getCommand("Stor");

        assertTrue(command instanceof NOOP);
    }
View Full Code Here

            return;
        }

        // call appropriate command method
        String siteRequest = "SITE_" + argument;
        Command command = (Command) COMMAND_MAP.get(siteRequest);
        try {
            if (command != null) {
                command.execute(session, context, request);
            } else {
                session.resetState();
                session.write(FtpReplyUtil.translate(session, request, context,
                        FtpReply.REPLY_502_COMMAND_NOT_IMPLEMENTED, "SITE",
                        argument));
View Full Code Here

    public Command getCommand(final String cmdName) {
        if (cmdName == null || cmdName.equals("")) {
            return null;
        }
        String upperCaseCmdName = cmdName.toUpperCase();
        Command command = commandMap.get(upperCaseCmdName);

        if (command == null && useDefaultCommands) {
            command = DEFAULT_COMMAND_MAP.get(upperCaseCmdName);
        }
View Full Code Here

    public void messageReceived(final FtpIoSession session,
            final FtpRequest request) throws Exception {
        try {
            String commandName = request.getCommand();
            CommandFactory commandFactory = context.getCommandFactory();
            Command command = commandFactory.getCommand(commandName);

            // make sure the user is authenticated before he issues commands
            if (!session.isLoggedIn()
                    && !isCommandOkWithoutAuthentication(commandName)) {
                session.write(FtpReplyUtil.translate(session, request, context,
                        FtpReply.REPLY_530_NOT_LOGGED_IN, "permission", null));
                return;
            }

            FtpletContainer ftplets = context.getFtpletContainer();

            FtpletResult ftpletRet;
            try {
                ftpletRet = ftplets.beforeCommand(session.getFtpletSession(),
                        request);
            } catch (Exception e) {
                LOG.debug("Ftplet container threw exception", e);
                ftpletRet = FtpletResult.DISCONNECT;
            }
            if (ftpletRet == FtpletResult.DISCONNECT) {
                session.closeOnFlush().awaitUninterruptibly(10000);
                return;
            } else if (ftpletRet != FtpletResult.SKIP) {

                if (command != null) {
                    synchronized (session) {
                        command.execute(session, context, request);
                    }
                } else {
                    session.write(FtpReplyUtil.translate(session, request,
                            context,
                            FtpReply.REPLY_502_COMMAND_NOT_IMPLEMENTED,
View Full Code Here

        }
        argument = argument.toUpperCase();

        // call appropriate command method
        String optsRequest = "OPTS_" + argument;
        Command command = (Command) COMMAND_MAP.get(optsRequest);
        try {
            if (command != null) {
                command.execute(session, context, request);
            } else {
                session.resetState();
                session.write(FtpReplyUtil.translate(session, request, context,
                        FtpReply.REPLY_502_COMMAND_NOT_IMPLEMENTED,
                        "OPTS.not.implemented", argument));
View Full Code Here

TOP

Related Classes of org.apache.ftpserver.interfaces.Command

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.