Package com.sun.enterprise.admin.remote

Examples of com.sun.enterprise.admin.remote.ServerRemoteAdminCommand


            }
            String host = svr.getAdminHost();
            int port = svr.getAdminPort();

            try {
                ServerRemoteAdminCommand remote =
                        new ServerRemoteAdminCommand(
                                locator,
                                "osgi",
                                host,
                                port,
                                false,
                                "admin",
                                "",
                                log);

                ParameterMap params = new ParameterMap();

                if(commandLine == null) {
                    params.set("DEFAULT".toLowerCase(), "asadmin-osgi-shell");
                } else if(commandLine instanceof String) {
                    params.set("DEFAULT".toLowerCase(), (String) commandLine);
                } else if(commandLine instanceof List) {
                    params.set("DEFAULT".toLowerCase(), (List<String>) commandLine);
                }

                if(sessionOp != null) {
                    params.set("session", sessionOp);
                }

                if(sessionId != null) {
                    params.set("session-id", sessionId);
                }

                report.setMessage(remote.executeCommand(params));
                report.setActionExitCode(ActionReport.ExitCode.SUCCESS);
                return;
            } catch(CommandException x) {
                report.setMessage("Remote execution failed: "
                        + x.getMessage());
                report.setFailureCause(x);
                report.setActionExitCode(ActionReport.ExitCode.FAILURE);
                return;
            }
        }

        String cmdName = "";
        String cmd = "";
        if(commandLine == null) {
            cmd = "asadmin-osgi-shell";
            cmdName = cmd;
        } else if(commandLine instanceof String) {
            cmd = (String) commandLine;
            cmdName = cmd;
        } else if(commandLine instanceof List) {
            for(Object arg : (List) commandLine) {
                if(cmd.length() == 0) {
                    // first arg
                    cmd = (String) arg;
                    cmdName = cmd;
                } else {
                    cmd += " " + (String) arg;
                }
            }
        } else if(commandLine instanceof String[]) {
            for(Object arg : (String[]) commandLine) {
                if(cmd.length() == 0) {
                    // first arg
                    cmd = (String) arg;
                    cmdName = cmd;
                } else {
                    cmd += " " + (String) arg;
                }
            }
        } else {
            // shouldn't happen...
            report.setMessage("Unable to deal with argument list of type "
                    + commandLine.getClass().getName());
            report.setActionExitCode(ActionReport.ExitCode.WARNING);
            return;
        }

        // standard output...
        ByteArrayOutputStream bOut = new ByteArrayOutputStream(512);
        PrintStream out = new PrintStream(bOut);

        // error output...
        ByteArrayOutputStream bErr = new ByteArrayOutputStream(512);
        PrintStream err = new PrintStream(bErr);

        try {
            Object shell = null;

            ServiceReference sref = ctx.getServiceReference(
                    "org.apache.felix.service.command.CommandProcessor");
            if(sref != null) {
                shell = ctx.getService(sref);
            }

            if(shell == null) {
                // try with felix...
                sref = ctx.getServiceReference("org.apache.felix.shell.ShellService");
                if(sref != null) {
                    shell = ctx.getService(sref);
                }

                if(shell == null) {
                    report.setMessage("No Shell Service available");
                    report.setActionExitCode(ActionReport.ExitCode.WARNING);
                    return;
                } else if("asadmin-osgi-shell".equals(cmdName)) {
                    out.println("felix");
                } else {
                    ShellService s = (ShellService) shell;
                    s.executeCommand(cmd, out, err);
                }
            } else {
                // try with gogo...

                // GLASSFISH-19126 - prepare fake input stream...
                InputStream in = new InputStream() {

                    @Override
                    public int read() throws IOException {
                        return -1;
                    }

                    @Override
                    public int available() throws IOException {
                        return 0;
                    }

                    @Override
                    public int read(byte[] b) throws IOException {
                        return -1;
                    }

                    @Override
                    public int read(byte[] b, int off, int len) throws IOException {
                        return -1;
                    }
                };

                CommandProcessor cp = (CommandProcessor) shell;
                if(sessionOp == null) {
                    if("asadmin-osgi-shell".equals(cmdName)) {
                        out.println("gogo");
                    } else {
                        CommandSession session = cp.createSession(in, out, err);
                        session.execute(cmd);
                        session.close();
                    }
                } else if("new".equals(sessionOp)) {
                    CommandSession session = cp.createSession(null, null, null);
                    RemoteCommandSession remote = new RemoteCommandSession(session);

                    log.log(Level.FINE, "Remote session established: {0}",
                            remote.getId());

                    sessions.put(remote.getId(), remote);
                    out.println(remote.getId());
                } else if("list".equals(sessionOp)) {
                    for(String id : sessions.keySet()) {
                        out.println(id);
                    }
                } else if("execute".equals(sessionOp)) {
                    RemoteCommandSession remote = sessions.get(sessionId);
                    CommandSession session = remote.attach(in, out, err);
                    session.execute(cmd);
                    remote.detach();
                } else if("stop".equals(sessionOp)) {
                    RemoteCommandSession remote = sessions.remove(sessionId);
                    CommandSession session = remote.attach(in, out, err);
                    session.close();

                    log.log(Level.FINE, "Remote session closed: {0}",
                            remote.getId());
                }
            }

            out.flush();
            err.flush();
View Full Code Here


            }
            String host = svr.getAdminHost();
            int port = svr.getAdminPort();

            try {
                ServerRemoteAdminCommand remote =
                        new ServerRemoteAdminCommand(
                                locator,
                                "osgi",
                                host,
                                port,
                                false,
                                "admin",
                                "",
                                log);

                ParameterMap params = new ParameterMap();

                if(commandLine == null) {
                    params.set("DEFAULT".toLowerCase(), "asadmin-osgi-shell");
                } else if(commandLine instanceof String) {
                    params.set("DEFAULT".toLowerCase(), (String) commandLine);
                } else if(commandLine instanceof List) {
                    params.set("DEFAULT".toLowerCase(), (List<String>) commandLine);
                }

                if(sessionOp != null) {
                    params.set("session", sessionOp);
                }

                if(sessionId != null) {
                    params.set("session-id", sessionId);
                }

                report.setMessage(remote.executeCommand(params));
                report.setActionExitCode(ActionReport.ExitCode.SUCCESS);
                return;
            } catch(CommandException x) {
                report.setMessage("Remote execution failed: "
                        + x.getMessage());
                report.setFailureCause(x);
                report.setActionExitCode(ActionReport.ExitCode.FAILURE);
                return;
            }
        }

        String cmdName = "";
        String cmd = "";
        if(commandLine == null) {
            cmd = "asadmin-osgi-shell";
            cmdName = cmd;
        } else if(commandLine instanceof String) {
            cmd = (String) commandLine;
            cmdName = cmd;
        } else if(commandLine instanceof List) {
            for(Object arg : (List) commandLine) {
                if(cmd.length() == 0) {
                    // first arg
                    cmd = (String) arg;
                    cmdName = cmd;
                } else {
                    cmd += " " + (String) arg;
                }
            }
        } else if(commandLine instanceof String[]) {
            for(Object arg : (String[]) commandLine) {
                if(cmd.length() == 0) {
                    // first arg
                    cmd = (String) arg;
                    cmdName = cmd;
                } else {
                    cmd += " " + (String) arg;
                }
            }
        } else {
            // shouldn't happen...
            report.setMessage("Unable to deal with argument list of type "
                    + commandLine.getClass().getName());
            report.setActionExitCode(ActionReport.ExitCode.WARNING);
            return;
        }

        // standard output...
        ByteArrayOutputStream bOut = new ByteArrayOutputStream(512);
        PrintStream out = new PrintStream(bOut);

        // error output...
        ByteArrayOutputStream bErr = new ByteArrayOutputStream(512);
        PrintStream err = new PrintStream(bErr);

        try {
            Object shell = null;

            ServiceReference sref = ctx.getServiceReference(
                    "org.apache.felix.service.command.CommandProcessor");
            if(sref != null) {
                shell = ctx.getService(sref);
            }

            if(shell == null) {
                // try with felix...
                sref = ctx.getServiceReference("org.apache.felix.shell.ShellService");
                if(sref != null) {
                    shell = ctx.getService(sref);
                }

                if(shell == null) {
                    report.setMessage("No Shell Service available");
                    report.setActionExitCode(ActionReport.ExitCode.WARNING);
                    return;
                } else if("asadmin-osgi-shell".equals(cmdName)) {
                    out.println("felix");
                } else {
                    ShellService s = (ShellService) shell;
                    s.executeCommand(cmd, out, err);
                }
            } else {
                // try with gogo...

                // GLASSFISH-19126 - prepare fake input stream...
                InputStream in = new InputStream() {

                    @Override
                    public int read() throws IOException {
                        return -1;
                    }

                    @Override
                    public int available() throws IOException {
                        return 0;
                    }

                    @Override
                    public int read(byte[] b) throws IOException {
                        return -1;
                    }

                    @Override
                    public int read(byte[] b, int off, int len) throws IOException {
                        return -1;
                    }
                };

                CommandProcessor cp = (CommandProcessor) shell;
                if(sessionOp == null) {
                    if("asadmin-osgi-shell".equals(cmdName)) {
                        out.println("gogo");
                    } else {
                        CommandSession session = cp.createSession(in, out, err);
                        session.execute(cmd);
                        session.close();
                    }
                } else if("new".equals(sessionOp)) {
                    CommandSession session = cp.createSession(null, null, null);
                    RemoteCommandSession remote = new RemoteCommandSession(session);

                    log.log(Level.FINE, "Remote session established: {0}",
                            remote.getId());

                    sessions.put(remote.getId(), remote);
                    out.println(remote.getId());
                } else if("list".equals(sessionOp)) {
                    for(String id : sessions.keySet()) {
                        out.println(id);
                    }
                } else if("execute".equals(sessionOp)) {
                    RemoteCommandSession remote = sessions.get(sessionId);
                    CommandSession session = remote.attach(in, out, err);
                    session.execute(cmd);
                    remote.detach();
                } else if("stop".equals(sessionOp)) {
                    RemoteCommandSession remote = sessions.remove(sessionId);
                    CommandSession session = remote.attach(in, out, err);
                    session.close();

                    log.log(Level.FINE, "Remote session closed: {0}",
                            remote.getId());
                }
            }

            out.flush();
            err.flush();
View Full Code Here

        if(!instance.isRunning())
            return null;

        try {
            logger.info(Strings.get("stop.instance.init", instanceName));
            RemoteAdminCommand rac = new ServerRemoteAdminCommand(habitat, "_stop-instance",
                    host, port, false, "admin", null, logger);

            // notice how we do NOT send in the instance's name as an operand!!
            ParameterMap map = new ParameterMap();
            map.add("force", Boolean.toString(force));
            rac.executeCommand(map);
        }
        catch (CommandException ex) {
            return Strings.get("stop.instance.racError", instanceName,
                    ex.getLocalizedMessage());
        }
View Full Code Here

    }

    private RemoteAdminCommand createRac(String cmdName) throws CommandException {
        // I wonder why the signature is so unwieldy?
        // hiding it here...
        return new ServerRemoteAdminCommand(habitat, cmdName, host,
                port, false, "admin", null, logger);
    }
View Full Code Here

        if(!instance.isRunning())
            return null;

        try {
            logger.info(Strings.get("stop.instance.init", instanceName));
            RemoteAdminCommand rac = new ServerRemoteAdminCommand(habitat, "_stop-instance",
                    host, port, false, "admin", null, logger);

            // notice how we do NOT send in the instance's name as an operand!!
            ParameterMap map = new ParameterMap();
            map.add("force", Boolean.toString(force));
            rac.executeCommand(map);
        }
        catch (CommandException ex) {
            return Strings.get("stop.instance.racError", instanceName,
                    ex.getLocalizedMessage());
        }
View Full Code Here

            }
            String host = svr.getAdminHost();
            int port = svr.getAdminPort();

            try {
                ServerRemoteAdminCommand remote =
                        new ServerRemoteAdminCommand(
                                locator,
                                "osgi",
                                host,
                                port,
                                false,
                                "admin",
                                "",
                                log);

                ParameterMap params = new ParameterMap();

                if(commandLine == null) {
                    params.set("DEFAULT".toLowerCase(Locale.US), "asadmin-osgi-shell");
                } else if(commandLine instanceof String) {
                    params.set("DEFAULT".toLowerCase(Locale.US), (String) commandLine);
                } else if(commandLine instanceof List) {
                    params.set("DEFAULT".toLowerCase(Locale.US), (List<String>) commandLine);
                }

                if(sessionOp != null) {
                    params.set("session", sessionOp);
                }

                if(sessionId != null) {
                    params.set("session-id", sessionId);
                }

                report.setMessage(remote.executeCommand(params));
                report.setActionExitCode(ActionReport.ExitCode.SUCCESS);
                return;
            } catch(CommandException x) {
                report.setMessage("Remote execution failed: "
                        + x.getMessage());
                report.setFailureCause(x);
                report.setActionExitCode(ActionReport.ExitCode.FAILURE);
                return;
            }
        }

        String cmdName = "";
        String cmd = "";
        if(commandLine == null) {
            cmd = "asadmin-osgi-shell";
            cmdName = cmd;
        } else if(commandLine instanceof String) {
            cmd = (String) commandLine;
            cmdName = cmd;
        } else if(commandLine instanceof List) {
            for(Object arg : (List) commandLine) {
                if(cmd.length() == 0) {
                    // first arg
                    cmd = (String) arg;
                    cmdName = cmd;
                } else {
                    cmd += " " + (String) arg;
                }
            }
        } else if(commandLine instanceof String[]) {
            for(Object arg : (String[]) commandLine) {
                if(cmd.length() == 0) {
                    // first arg
                    cmd = (String) arg;
                    cmdName = cmd;
                } else {
                    cmd += " " + (String) arg;
                }
            }
        } else {
            // shouldn't happen...
            report.setMessage("Unable to deal with argument list of type "
                    + commandLine.getClass().getName());
            report.setActionExitCode(ActionReport.ExitCode.WARNING);
            return;
        }

        // standard output...
        ByteArrayOutputStream bOut = new ByteArrayOutputStream(512);
        PrintStream out = new PrintStream(bOut);

        // error output...
        ByteArrayOutputStream bErr = new ByteArrayOutputStream(512);
        PrintStream err = new PrintStream(bErr);

        try {
            Object shell = null;

            ServiceReference sref = ctx.getServiceReference(
                    "org.apache.felix.service.command.CommandProcessor");
            if(sref != null) {
                shell = ctx.getService(sref);
            }

            if(shell == null) {
                // try with felix...
                sref = ctx.getServiceReference("org.apache.felix.shell.ShellService");
                if(sref != null) {
                    shell = ctx.getService(sref);
                }

                if(shell == null) {
                    report.setMessage("No Shell Service available");
                    report.setActionExitCode(ActionReport.ExitCode.WARNING);
                    return;
                } else if("asadmin-osgi-shell".equals(cmdName)) {
                    out.println("felix");
                } else {
                    ShellService s = (ShellService) shell;
                    s.executeCommand(cmd, out, err);
                }
            } else {
                // try with gogo...

                // GLASSFISH-19126 - prepare fake input stream...
                InputStream in = new InputStream() {

                    @Override
                    public int read() throws IOException {
                        return -1;
                    }

                    @Override
                    public int available() throws IOException {
                        return 0;
                    }

                    @Override
                    public int read(byte[] b) throws IOException {
                        return -1;
                    }

                    @Override
                    public int read(byte[] b, int off, int len) throws IOException {
                        return -1;
                    }
                };

                CommandProcessor cp = (CommandProcessor) shell;
                if(sessionOp == null) {
                    if("asadmin-osgi-shell".equals(cmdName)) {
                        out.println("gogo");
                    } else {
                        CommandSession session = cp.createSession(in, out, err);
                        session.execute(cmd);
                        session.close();
                    }
                } else if("new".equals(sessionOp)) {
                    CommandSession session = cp.createSession(null, null, null);
                    RemoteCommandSession remote = new RemoteCommandSession(session);

                    log.log(Level.FINE, "Remote session established: {0}",
                            remote.getId());

                    sessions.put(remote.getId(), remote);
                    out.println(remote.getId());
                } else if("list".equals(sessionOp)) {
                    for(String id : sessions.keySet()) {
                        out.println(id);
                    }
                } else if("execute".equals(sessionOp)) {
                    RemoteCommandSession remote = sessions.get(sessionId);
                    CommandSession session = remote.attach(in, out, err);
                    session.execute(cmd);
                    remote.detach();
                } else if("stop".equals(sessionOp)) {
                    RemoteCommandSession remote = sessions.remove(sessionId);
                    CommandSession session = remote.attach(in, out, err);
                    session.close();

                    log.log(Level.FINE, "Remote session closed: {0}",
                            remote.getId());
                }
            }

            out.flush();
            err.flush();
View Full Code Here

        if(!instance.isRunning())
            return null;

        try {
            logger.info(Strings.get("stop.instance.init", instanceName));
            RemoteAdminCommand rac = new ServerRemoteAdminCommand(habitat, "_stop-instance",
                    host, port, false, "admin", null, logger);

            // notice how we do NOT send in the instance's name as an operand!!
            ParameterMap map = new ParameterMap();
            map.add("force", Boolean.toString(force));
            rac.executeCommand(map);
        }
        catch (CommandException ex) {
            return Strings.get("stop.instance.racError", instanceName,
                    ex.getLocalizedMessage());
        }
View Full Code Here

TOP

Related Classes of com.sun.enterprise.admin.remote.ServerRemoteAdminCommand

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.