Search in sources :

Example 21 with ConnectionException

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

the class AdministrationProxy method getErrorCounterById.

public long getErrorCounterById(String serverName, int id, String serviceName) {
    log.trace("getErrorCounterById");
    long counter = 0;
    String command = "error_counter," + serviceName + ",";
    try {
        Response buf = callAdminService(serverName, id, command);
        if (buf != null) {
            byte[] received = ((X_OCTET) buf.getBuffer()).getByteArray();
            counter = Long.parseLong(new String(received, 1, received.length - 1));
        }
    } catch (ConnectionException e) {
        log.error("call server " + serverName + " id " + id + " failed with " + e.getTperrno());
    } catch (ConfigurationException e) {
        log.error("call server " + serverName + " id " + id + " failed with configuration exception", e);
    }
    return counter;
}
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 22 with ConnectionException

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

the class AdministrationProxy method getResponseTimeById.

public String getResponseTimeById(String serverName, int id, String serviceName) {
    log.trace("getResponseTimeById");
    String command = "responsetime," + serviceName + ",";
    log.trace("response command is " + command);
    try {
        Response buf = callAdminService(serverName, id, command);
        if (buf != null) {
            byte[] received = ((X_OCTET) buf.getBuffer()).getByteArray();
            String result = new String(received, 1, received.length - 1);
            log.trace("response result is " + result);
            return result;
        }
    } catch (ConnectionException e) {
        log.error("call server " + serverName + " id " + id + " failed with " + e.getTperrno(), e);
    } catch (RuntimeException e) {
        log.error("Could not get response time from server: " + e.getMessage(), e);
        throw e;
    } catch (ConfigurationException e) {
        log.error("call server " + serverName + " id " + id + " failed with configuration exception", e);
    }
    return null;
}
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 ConnectionException

use of org.jboss.narayana.blacktie.jatmibroker.xatmi.ConnectionException 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 24 with ConnectionException

use of org.jboss.narayana.blacktie.jatmibroker.xatmi.ConnectionException 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 ConnectionException

use of org.jboss.narayana.blacktie.jatmibroker.xatmi.ConnectionException 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

ConnectionException (org.jboss.narayana.blacktie.jatmibroker.xatmi.ConnectionException)41 Response (org.jboss.narayana.blacktie.jatmibroker.xatmi.Response)12 ConfigurationException (org.jboss.narayana.blacktie.jatmibroker.core.conf.ConfigurationException)11 IOException (java.io.IOException)9 X_OCTET (org.jboss.narayana.blacktie.jatmibroker.xatmi.X_OCTET)9 ResponseException (org.jboss.narayana.blacktie.jatmibroker.xatmi.ResponseException)6 Message (org.jboss.narayana.blacktie.jatmibroker.core.transport.Message)5 Receiver (org.jboss.narayana.blacktie.jatmibroker.core.transport.Receiver)5 Buffer (org.jboss.narayana.blacktie.jatmibroker.xatmi.Buffer)5 CodecFactory (org.jboss.narayana.blacktie.jatmibroker.codec.CodecFactory)3 Codec (org.jboss.narayana.blacktie.jatmibroker.core.transport.Codec)3 Transport (org.jboss.narayana.blacktie.jatmibroker.core.transport.Transport)3 TransactionException (org.jboss.narayana.blacktie.jatmibroker.core.tx.TransactionException)3 SocketException (java.net.SocketException)2 HashMap (java.util.HashMap)2 StringTokenizer (java.util.StringTokenizer)2 ServiceData (org.jboss.narayana.blacktie.jatmibroker.core.server.ServiceData)2 Sender (org.jboss.narayana.blacktie.jatmibroker.core.transport.Sender)2 ByteArrayInputStream (java.io.ByteArrayInputStream)1 ByteArrayOutputStream (java.io.ByteArrayOutputStream)1