org.apache.qpid.properties.ConnectionStartProperties Maven / Gradle / Ivy
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*
*/
package org.apache.qpid.properties;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.apache.qpid.util.SystemUtils;
/**
* Constants for the various properties clients can
* set values for during the ConnectionStartOk reply.
*/
public class ConnectionStartProperties
{
private static final Logger LOGGER = LoggerFactory.getLogger(ConnectionStartProperties.class);
/**
* Used for 0-8/0-9/0-9-1 connections to choose to close
* the connection when a transactional session receives a 'mandatory' message which
* can't be routed rather than returning the message.
*/
public static final String QPID_CLOSE_WHEN_NO_ROUTE = "qpid.close_when_no_route";
public static final String QPID_MESSAGE_COMPRESSION_SUPPORTED = "qpid.message_compression_supported";
public static final String QPID_VIRTUALHOST_PROPERTIES_SUPPORTED = "qpid.virtualhost_properties_supported";
public static final String CLIENT_ID_0_10 = "clientName";
public static final String CLIENT_ID_0_8 = "instance";
public static final String VERSION_0_8 = "version";
public static final String VERSION_0_10 = "qpid.client_version";
public static final String PROCESS = "qpid.client_process";
public static final String PID = "qpid.client_pid";
public static final String PLATFORM = "platform";
public static final String PRODUCT ="product";
public static final String SESSION_FLOW = "qpid.session_flow";
public static final String QPID_CONFIRMED_PUBLISH_SUPPORTED = "qpid.confirmed_publish_supported";
public static final String QPID_QUEUE_LIFETIME_SUPPORTED = "qpid.queue_lifetime_supported";
public static final int _pid;
public static final String _platformInfo;
static
{
_pid = SystemUtils.getProcessPidAsInt();
if (_pid == -1)
{
LOGGER.warn("Unable to get the process's PID");
}
StringBuilder fullSystemInfo = new StringBuilder(System.getProperty("java.runtime.name"));
fullSystemInfo.append(", ");
fullSystemInfo.append(System.getProperty("java.runtime.version"));
fullSystemInfo.append(", ");
fullSystemInfo.append(System.getProperty("java.vendor"));
fullSystemInfo.append(", ");
fullSystemInfo.append(SystemUtils.getOSArch());
fullSystemInfo.append(", ");
fullSystemInfo.append(SystemUtils.getOSName());
fullSystemInfo.append(", ");
fullSystemInfo.append(SystemUtils.getOSVersion());
fullSystemInfo.append(", ");
fullSystemInfo.append(System.getProperty("sun.os.patch.level"));
_platformInfo = fullSystemInfo.toString();
}
public static int getPID()
{
return _pid;
}
public static String getPlatformInfo()
{
return _platformInfo;
}
}