Search in sources :

Example 21 with Response

use of org.jboss.narayana.blacktie.jatmibroker.xatmi.Response in project narayana by jbosstm.

the class BlacktieStompAdministrationServiceTest method processDomainCommand.

private void processDomainCommand(String command, int expectation) throws ConnectionException, ConfigurationException {
    byte[] toSend = command.getBytes();
    X_OCTET buffer = (X_OCTET) connection.tpalloc("X_OCTET", null);
    buffer.setByteArray(toSend);
    Response response = connection.tpcall("BTDomainAdmin", buffer, 0);
    byte[] responseData = ((X_OCTET) response.getBuffer()).getByteArray();
    assertEquals(expectation, responseData[0]);
}
Also used : Response(org.jboss.narayana.blacktie.jatmibroker.xatmi.Response) X_OCTET(org.jboss.narayana.blacktie.jatmibroker.xatmi.X_OCTET)

Example 22 with Response

use of org.jboss.narayana.blacktie.jatmibroker.xatmi.Response in project narayana by jbosstm.

the class AdministrationProxy method getServerVersionById.

public String getServerVersionById(String serverName, int id) {
    log.trace("getServerVersionById");
    String command = "version";
    Response buf = null;
    String version = null;
    try {
        buf = callAdminService(serverName, id, command);
        if (buf != null) {
            byte[] received = ((X_OCTET) buf.getBuffer()).getByteArray();
            if (received[0] == '1') {
                version = new String(received, 1, received.length - 1);
                log.debug("version is " + version);
            }
        }
    } catch (ConnectionException e) {
        log.error("call server " + serverName + " id " + id + " failed with " + e.getTperrno(), e);
    } catch (ConfigurationException e) {
        log.error("call server " + serverName + " id " + id + " failed with configuration exception", e);
    }
    return version;
}
Also used : Response(org.jboss.narayana.blacktie.jatmibroker.xatmi.Response) X_OCTET(org.jboss.narayana.blacktie.jatmibroker.xatmi.X_OCTET) ConfigurationException(org.jboss.narayana.blacktie.jatmibroker.core.conf.ConfigurationException) ConnectionException(org.jboss.narayana.blacktie.jatmibroker.xatmi.ConnectionException)

Example 23 with Response

use of org.jboss.narayana.blacktie.jatmibroker.xatmi.Response in project narayana by jbosstm.

the class AdministrationProxy method callAdminService.

private Response callAdminService(String serverName, int id, String command) throws ConnectionException, ConfigurationException {
    log.trace("callAdminService");
    command = command + "\0";
    X_OCTET sendbuf = (X_OCTET) connection.tpalloc("X_OCTET", null);
    sendbuf.setByteArray(command.getBytes());
    String service = "." + serverName + id;
    Response rcvbuf = connection.tpcall(service, sendbuf, 0);
    return rcvbuf;
}
Also used : Response(org.jboss.narayana.blacktie.jatmibroker.xatmi.Response) X_OCTET(org.jboss.narayana.blacktie.jatmibroker.xatmi.X_OCTET)

Example 24 with Response

use of org.jboss.narayana.blacktie.jatmibroker.xatmi.Response in project narayana by jbosstm.

the class AdministrationProxy method listServiceStatusById.

public String listServiceStatusById(String serverName, int id, String serviceName) {
    log.trace("listServiceStatusById");
    String command = "status";
    Response buf = null;
    String status = null;
    try {
        if (serviceName != null) {
            command = command + "," + serviceName + ",";
        }
        buf = callAdminService(serverName, id, command);
        if (buf != null) {
            byte[] received = ((X_OCTET) buf.getBuffer()).getByteArray();
            if (received[0] == '1') {
                status = new String(received, 1, received.length - 1);
                log.debug("status is " + status);
                return status;
            }
        }
    } catch (ConnectionException e) {
        log.error("call server " + serverName + " id " + id + " failed with " + e.getTperrno());
    } catch (Exception e) {
        log.error("response " + status + " error with " + e);
    }
    return null;
}
Also used : Response(org.jboss.narayana.blacktie.jatmibroker.xatmi.Response) X_OCTET(org.jboss.narayana.blacktie.jatmibroker.xatmi.X_OCTET) ConnectionException(org.jboss.narayana.blacktie.jatmibroker.xatmi.ConnectionException) IOException(java.io.IOException) ConfigurationException(org.jboss.narayana.blacktie.jatmibroker.core.conf.ConfigurationException) ConnectionException(org.jboss.narayana.blacktie.jatmibroker.xatmi.ConnectionException)

Example 25 with Response

use of org.jboss.narayana.blacktie.jatmibroker.xatmi.Response in project narayana by jbosstm.

the class BlacktieAdminServiceXATMI method tpservice.

public Response tpservice(TPSVCINFO svcinfo) {
    log.trace("Message received");
    X_OCTET recv = (X_OCTET) svcinfo.getBuffer();
    String string = new String(recv.getByteArray());
    StringTokenizer parameters = new StringTokenizer(string, ",", false);
    String operation = parameters.nextToken();
    byte[] toReturn = null;
    try {
        if (operation.equals("getDomainName")) {
            String response = getDomainName();
            toReturn = response.getBytes();
        } else if (operation.equals("getServerName")) {
            String serviceName = getString(parameters);
            String response = getServerName(serviceName);
            toReturn = response.getBytes();
        } else if (operation.equals("getSoftwareVersion")) {
            String response = getSoftwareVersion();
            toReturn = response.getBytes();
        } else if (operation.equals("pauseDomain")) {
            boolean response = pauseDomain();
            toReturn = convertBoolean(response);
        } else if (operation.equals("resumeDomain")) {
            boolean response = resumeDomain();
            toReturn = convertBoolean(response);
        } else if (operation.equals("listRunningServers")) {
            List<String> response = listRunningServers();
            toReturn = convertListString(response);
        } else if (operation.equals("listRunningInstanceIds")) {
            String serverName = getString(parameters);
            List<Integer> response = listRunningInstanceIds(serverName);
            toReturn = convertListInt(response);
        } else if (operation.equals("listServersStatus")) {
            String response = listServersStatus();
            toReturn = response.getBytes();
        } else if (operation.equals("listServiceStatus")) {
            String serverName = getString(parameters);
            String serviceName = getString(parameters);
            String response = listServiceStatus(serverName, serviceName);
            toReturn = response.getBytes();
        } else if (operation.equals("advertise")) {
            String serverName = getString(parameters);
            String serviceName = getString(parameters);
            boolean response = advertise(serverName, serviceName);
            toReturn = convertBoolean(response);
        } else if (operation.equals("unadvertise")) {
            String serverName = getString(parameters);
            String serviceName = getString(parameters);
            boolean response = unadvertise(serverName, serviceName);
            toReturn = convertBoolean(response);
        } else if (operation.equals("shutdown")) {
            String serverName = getString(parameters);
            int id = getInt(parameters);
            Boolean shutdown = shutdown(serverName, id);
            toReturn = convertBoolean(shutdown);
        } else if (operation.equals("getServiceCounterById")) {
            String serverName = getString(parameters);
            int id = getInt(parameters);
            String serviceName = getString(parameters);
            long response = getServiceCounterById(serverName, id, serviceName);
            toReturn = convertLong(response);
        } else if (operation.equals("getServiceCounter")) {
            String serverName = getString(parameters);
            String serviceName = getString(parameters);
            long response = getServiceCounter(serverName, serviceName);
            toReturn = convertLong(response);
        } else if (operation.equals("getErrorCounter")) {
            String serverName = getString(parameters);
            String serviceName = getString(parameters);
            long response = getErrorCounter(serverName, serviceName);
            toReturn = convertLong(response);
        } else if (operation.equals("reloadDomain")) {
            boolean response = reloadDomain();
            toReturn = convertBoolean(response);
        } else if (operation.equals("reloadServer")) {
            String serverName = getString(parameters);
            boolean response = reloadServer(serverName);
            toReturn = convertBoolean(response);
        } else if (operation.equals("listServiceStatusById")) {
            String serverName = getString(parameters);
            int id = getInt(parameters);
            String serviceName = getString(parameters);
            String response = listServiceStatusById(serverName, id, serviceName);
            toReturn = response.getBytes();
        } else if (operation.equals("getDomainStatus")) {
            boolean response = getDomainStatus();
            toReturn = convertBoolean(response);
        } else if (operation.equals("getResponseTime")) {
            String serverName = getString(parameters);
            String serviceName = getString(parameters);
            String times = getResponseTime(serverName, serviceName);
            toReturn = times.getBytes();
        } else if (operation.equals("getQueueDepth")) {
            String serverName = getString(parameters);
            String serviceName = getString(parameters);
            int depth = getQueueDepth(serverName, serviceName);
            toReturn = (new StringBuffer().append(depth)).toString().getBytes();
        } else if (operation.equals("getServerVersionById")) {
            String serverName = getString(parameters);
            int id = getInt(parameters);
            String response = getServerVersionById(serverName, id);
            toReturn = response.getBytes();
        } else {
            log.error("Unknown operation: " + operation);
            return new Response(Connection.TPFAIL, 0, null, 0);
        }
        X_OCTET buffer = (X_OCTET) svcinfo.getConnection().tpalloc("X_OCTET", null);
        buffer.setByteArray(toReturn);
        log.debug("Responding");
        return new Response(Connection.TPSUCCESS, 0, buffer, 0);
    } catch (ConnectionException e) {
        return new Response(Connection.TPFAIL, 0, null, 0);
    } catch (IOException e) {
        return new Response(Connection.TPFAIL, 0, null, 0);
    } catch (ConfigurationException e) {
        return new Response(Connection.TPFAIL, 0, null, 0);
    }
}
Also used : IOException(java.io.IOException) Response(org.jboss.narayana.blacktie.jatmibroker.xatmi.Response) X_OCTET(org.jboss.narayana.blacktie.jatmibroker.xatmi.X_OCTET) StringTokenizer(java.util.StringTokenizer) ConfigurationException(org.jboss.narayana.blacktie.jatmibroker.core.conf.ConfigurationException) List(java.util.List) ConnectionException(org.jboss.narayana.blacktie.jatmibroker.xatmi.ConnectionException)

Aggregations

Response (org.jboss.narayana.blacktie.jatmibroker.xatmi.Response)35 X_OCTET (org.jboss.narayana.blacktie.jatmibroker.xatmi.X_OCTET)29 ConnectionException (org.jboss.narayana.blacktie.jatmibroker.xatmi.ConnectionException)12 ConfigurationException (org.jboss.narayana.blacktie.jatmibroker.core.conf.ConfigurationException)8 StringTokenizer (java.util.StringTokenizer)3 X_C_TYPE (org.jboss.narayana.blacktie.jatmibroker.xatmi.X_C_TYPE)3 IOException (java.io.IOException)2 List (java.util.List)2 Buffer (org.jboss.narayana.blacktie.jatmibroker.xatmi.Buffer)2 ResponseException (org.jboss.narayana.blacktie.jatmibroker.xatmi.ResponseException)2 X_COMMON (org.jboss.narayana.blacktie.jatmibroker.xatmi.X_COMMON)2 StringReader (java.io.StringReader)1 UnknownHostException (java.net.UnknownHostException)1 ArrayList (java.util.ArrayList)1 DocumentBuilder (javax.xml.parsers.DocumentBuilder)1 DocumentBuilderFactory (javax.xml.parsers.DocumentBuilderFactory)1 CodecFactory (org.jboss.narayana.blacktie.jatmibroker.codec.CodecFactory)1 Codec (org.jboss.narayana.blacktie.jatmibroker.core.transport.Codec)1 Message (org.jboss.narayana.blacktie.jatmibroker.core.transport.Message)1 Receiver (org.jboss.narayana.blacktie.jatmibroker.core.transport.Receiver)1