You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by hi...@apache.org on 2016/09/09 21:44:14 UTC
[77/83] [abbrv] incubator-geode git commit: GEODE-37 renamed pulse
package
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/JmxManagerFinder.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/JmxManagerFinder.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/JmxManagerFinder.java
deleted file mode 100644
index f2d211a..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/JmxManagerFinder.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.data;
-
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.IOException;
-import java.net.InetAddress;
-import java.net.InetSocketAddress;
-import java.net.Socket;
-import java.net.SocketAddress;
-
-import com.vmware.geode.tools.pulse.internal.log.PulseLogWriter;
-import com.vmware.geode.tools.pulse.internal.util.ConnectionUtil;
-
-/**
- * This class can be used to connect to a locator and ask it to find a jmx
- * manager. If the locator can find a jmx manager that is already running it
- * returns it. Otherwise the locator will attempt to start a jmx manager and
- * then return it.
- *
- * This code does not depend on gemfire.jar but in order to do this some of
- * GemFire's internal serialization codes and byte sequences have been hard
- * coded into this code.
- *
- * @since GemFire version 7.0.Beta 2012-09-23
- *
- */
-public class JmxManagerFinder {
-
- private final static PulseLogWriter LOGGER = PulseLogWriter.getLogger();
-
- /*
- * public static void main(String[] args) throws IOException { if (args.length
- * != 2) { System.err.println(
- * "Usage: JmxManagerFinder locatorHost locatorPort. Expected two arguments but found "
- * + args.length); return; } String locatorHost = args[0]; int locatorPort =
- * Integer.parseInt(args[1]);
- *
- * InetAddress addr = InetAddress.getByName(locatorHost); JmxManagerInfo
- * locRes = askLocatorForJmxManager(addr, locatorPort, 15000);
- *
- * if (locRes.port == 0) {
- * System.out.println("Locator could not find a jmx manager"); } else {
- * System.out.println("Locator on host " + locRes.host + " port " +
- * locRes.port + (locRes.ssl ? " ssl" : "")); } }
- */
- private static final short JMX_MANAGER_LOCATOR_REQUEST = 2150;
- private static final short JMX_MANAGER_LOCATOR_RESPONSE = 2151;
- private static final byte DS_FIXED_ID_SHORT = 2;
- private static final int GOSSIPVERSION = 1001;
- private static final byte STRING_BYTES = 87;
- private static final byte NULL_STRING = 69;
-
- /**
- * Describes the location of a jmx manager. If a jmx manager does not exist
- * then port will be 0.
- *
- *
- */
- public static class JmxManagerInfo {
- JmxManagerInfo(String host, int port, boolean ssl) {
- this.host = host;
- this.port = port;
- this.ssl = ssl;
- }
-
- /**
- * The host/address the jmx manager is listening on.
- */
- public final String host;
- /**
- * The port the jmx manager is listening on.
- */
- public final int port;
- /**
- * True if the jmx manager is using SSL.
- */
- public final boolean ssl;
- }
-
- /**
- * Ask a locator to find a jmx manager. The locator will start one if one is
- * not already running.
- *
- * @param addr
- * the host address the locator is listening on
- * @param port
- * the port the locator is listening on
- * @param timeout
- * the number of milliseconds to wait for a response; 15000 is a
- * reasonable default
- * @return describes the location of the jmx manager. The port will be zero if
- * no jmx manager was found.
- * @throws IOException
- * if a problem occurs trying to connect to the locator or
- * communicate with it.
- */
- public static JmxManagerInfo askLocatorForJmxManager(InetAddress addr,
- int port, int timeout, boolean usessl) throws IOException {
- SocketAddress sockaddr = new InetSocketAddress(addr, port);
- Socket sock = ConnectionUtil.getSocketFactory(usessl).createSocket();
- try {
- sock.connect(sockaddr, timeout);
- sock.setSoTimeout(timeout);
- DataOutputStream out = new DataOutputStream(sock.getOutputStream());
-
- out.writeInt(GOSSIPVERSION);
- out.writeByte(DS_FIXED_ID_SHORT);
- out.writeShort(JMX_MANAGER_LOCATOR_REQUEST);
- out.flush();
-
- DataInputStream in = new DataInputStream(sock.getInputStream());
- byte header = in.readByte();
- if (header != DS_FIXED_ID_SHORT) {
- throw new IllegalStateException("Expected " + DS_FIXED_ID_SHORT
- + " but found " + header);
- }
- int msgType = in.readShort();
- if (msgType != JMX_MANAGER_LOCATOR_RESPONSE) {
- throw new IllegalStateException("Expected "
- + JMX_MANAGER_LOCATOR_RESPONSE + " but found " + msgType);
- }
- byte hostHeader = in.readByte();
- String host;
- if (hostHeader == NULL_STRING) {
- host = "";
- } else if (hostHeader == STRING_BYTES) {
- int len = in.readUnsignedShort();
- byte[] buf = new byte[len];
- in.readFully(buf, 0, len);
- @SuppressWarnings("deprecation")
- String str = new String(buf, 0);
- host = str;
- } else {
- throw new IllegalStateException("Expected " + STRING_BYTES + " or "
- + NULL_STRING + " but found " + hostHeader);
- }
- int jmport = in.readInt();
- boolean ssl = in.readBoolean();
- if (host.equals("")) {
- jmport = 0;
- }
- return new JmxManagerInfo(host, jmport, ssl);
- } finally {
- try {
- sock.close();
- } catch (Exception e) {
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseConfig.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseConfig.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseConfig.java
deleted file mode 100644
index cfd6b62..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseConfig.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.data;
-
-import java.util.logging.Level;
-
-/**
- * Class PulseConfig
- *
- * PulseConfig is used for configuring Pulse application.
- *
- * @since GemFire 7.0.1
- *
- */
-public class PulseConfig {
-
- // Log file name
- private String LogFileName;
-
- // Log file location
- private String LogFileLocation;
-
- // Log file size in MBs
- private int logFileSize;
-
- // Number of cyclic log files
- private int logFileCount;
-
- // Log messages date pattern
- private String logDatePattern;
-
- // Log level
- private Level logLevel;
-
- // Flag for appending log messages
- private Boolean logAppend;
-
- // Query history log file
- private String queryHistoryFileName;
-
- public PulseConfig() {
- this.setLogFileName(PulseConstants.PULSE_LOG_FILE_NAME);
- this.LogFileLocation = PulseConstants.PULSE_LOG_FILE_LOCATION;
- this.logFileSize = PulseConstants.PULSE_LOG_FILE_SIZE;
- this.logFileCount = PulseConstants.PULSE_LOG_FILE_COUNT;
- this.logDatePattern = PulseConstants.PULSE_LOG_MESSAGE_DATE_PATTERN;
- this.logLevel = PulseConstants.PULSE_LOG_LEVEL;
- this.logAppend = PulseConstants.PULSE_LOG_APPEND;
- this.queryHistoryFileName = PulseConstants.PULSE_QUERY_HISTORY_FILE_LOCATION
- + System.getProperty("file.separator")
- + PulseConstants.PULSE_QUERY_HISTORY_FILE_NAME;
-
- }
-
- public String getLogFileName() {
- return LogFileName;
- }
-
- public void setLogFileName(String logFileName) {
- this.LogFileName = logFileName + "_%g.log";
- }
-
- public String getLogFileLocation() {
- return LogFileLocation;
- }
-
- public void setLogFileLocation(String logFileLocation) {
- this.LogFileLocation = logFileLocation;
- }
-
- public String getLogFileFullName() {
- return this.LogFileLocation + "/" + this.LogFileName;
- }
-
- public int getLogFileSize() {
- return logFileSize;
- }
-
- public void setLogFileSize(int logFileSize) {
- this.logFileSize = logFileSize;
- }
-
- public int getLogFileCount() {
- return logFileCount;
- }
-
- public void setLogFileCount(int logFileCount) {
- this.logFileCount = logFileCount;
- }
-
- public String getLogDatePattern() {
- return logDatePattern;
- }
-
- public void setLogDatePattern(String logDatePattern) {
- this.logDatePattern = logDatePattern;
- }
-
- public Level getLogLevel() {
- return logLevel;
- }
-
- public void setLogLevel(Level logLevel) {
- this.logLevel = logLevel;
- }
-
- public Boolean getLogAppend() {
- return logAppend;
- }
-
- public void setLogAppend(Boolean logAppend) {
- this.logAppend = logAppend;
- }
-
- public String getQueryHistoryFileName() {
- return queryHistoryFileName;
- }
-
- public void setQueryHistoryFileName(String queryHistoryFileName) {
- this.queryHistoryFileName = queryHistoryFileName;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseConstants.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseConstants.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseConstants.java
deleted file mode 100644
index c9e711a..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseConstants.java
+++ /dev/null
@@ -1,434 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.data;
-
-import java.util.logging.Level;
-
-public class PulseConstants {
-
- public static final String APP_NAME = "PULSE";
- public static final String PULSE_LOG_FILE = APP_NAME + ".log";
- // public static final String PULSE_LOG_FILE_LOCATION =
- // System.getProperty("user.home");
- public static final String PULSE_PROPERTIES_FILE = "pulse.properties";
- public static final String PULSE_SECURITY_PROPERTIES_FILE = "pulsesecurity.properties";
- public static final String PULSE_NOTIFICATION_ALERT_DATE_PATTERN = "yyyy-MM-dd'T'HH:mm'Z'";
- public static final String LOG_MESSAGE_DATE_PATTERN = "yyyy/MM/dd HH:mm:ss.SSS z";
-
- public static final String LOG_MESSAGES_FILE = "LogMessages";
- public static final String APPLICATION_LANGUAGE = "en";
- public static final String APPLICATION_COUNTRY = "US";
-
- // Pulse version details properties from properties file
- public static final String PULSE_VERSION_PROPERTIES_FILE = "GemFireVersion.properties";
- public static final String PROPERTY_PULSE_VERSION = "Product-Version";
- public static final String PROPERTY_BUILD_ID = "Build-Id";
- public static final String PROPERTY_BUILD_DATE = "Build-Date";
- public static final String PROPERTY_SOURCE_DATE = "Source-Date";
- public static final String PROPERTY_SOURCE_REVISION = "Source-Revision";
- public static final String PROPERTY_SOURCE_REPOSITORY = "Source-Repository";
-
- // DEFAULT CONFIGUARTION VALUES FOR PULSE LOGGER
- // Log File
- public static final String PULSE_QUERY_HISTORY_FILE_NAME = APP_NAME
- + "_QueryHistory.json";
- // Log File location
- public static final String PULSE_QUERY_HISTORY_FILE_LOCATION = System
- .getProperty("user.home");
- // Date pattern to be used in log messages
- public static final String PULSE_QUERY_HISTORY_DATE_PATTERN = "EEE, MMM dd yyyy, HH:mm:ss z";
-
- // Decimal format pattern "###.##" and "0.0000"
- public static final String DECIMAL_FORMAT_PATTERN = "###.##";
- public static final String DECIMAL_FORMAT_PATTERN_2 = "0.0000";
-
- // DEFAULT VALUES
- public static final String GEMFIRE_DEFAULT_HOST = "localhost";
- public static final String GEMFIRE_DEFAULT_PORT = "1099";
-
- // DEFAULT CONFIGUARTION VALUES FOR PULSE LOGGER
- // Log File
- public static final String PULSE_LOG_FILE_NAME = APP_NAME;
- // Log File location
- public static final String PULSE_LOG_FILE_LOCATION = System
- .getProperty("user.home");
- // Date pattern to be used in log messages
- public static final String PULSE_LOG_MESSAGE_DATE_PATTERN = "yyyy/MM/dd HH:mm:ss.SSS z";
- // Log file size - 1MB.
- public static final int PULSE_LOG_FILE_SIZE = 1024 * 1024;
- // The log file count - 4 files.
- public static final int PULSE_LOG_FILE_COUNT = 4;
- // Append logs - true.
- public static final boolean PULSE_LOG_APPEND = true;
- // Log level - FINE
- public static final Level PULSE_LOG_LEVEL = Level.FINE;
-
- // SYSTEM PROPERTIES
- public static final String SYSTEM_PROPERTY_PULSE_EMBEDDED = "pulse.embedded";
- public static final String SYSTEM_PROPERTY_PULSE_EMBEDDED_SQLF = "pulse.embedded.sqlf";
- public static final String SYSTEM_PROPERTY_PULSE_USELOCATOR = "pulse.useLocator";
- public static final String SYSTEM_PROPERTY_PULSE_HOST = "pulse.host";
- public static final String SYSTEM_PROPERTY_PULSE_PORT = "pulse.port";
-
- // APPLICATION PROPERTIES
- public static final String APPLICATION_PROPERTY_PULSE_USELOCATOR = "pulse.useLocator";
- public static final String APPLICATION_PROPERTY_PULSE_HOST = "pulse.host";
- public static final String APPLICATION_PROPERTY_PULSE_PORT = "pulse.port";
- public static final String APPLICATION_PROPERTY_PULSE_JMXUSERNAME = "pulse.jmxUserName";
- public static final String APPLICATION_PROPERTY_PULSE_JMXPASSWORD = "pulse.jmxUserPassword";
- public static final String APPLICATION_PROPERTY_PULSE_LOGFILENAME = "pulse.Log-File-Name";
- public static final String APPLICATION_PROPERTY_PULSE_LOGFILELOCATION = "pulse.Log-File-Location";
- public static final String APPLICATION_PROPERTY_PULSE_LOGFILESIZE = "pulse.Log-File-Size";
- public static final String APPLICATION_PROPERTY_PULSE_LOGFILECOUNT = "pulse.Log-File-Count";
- public static final String APPLICATION_PROPERTY_PULSE_LOGDATEPATTERN = "pulse.Log-Date-Pattern";
- public static final String APPLICATION_PROPERTY_PULSE_LOGLEVEL = "pulse.Log-Level";
- public static final String APPLICATION_PROPERTY_PULSE_LOGAPPEND = "pulse.Log-Append";
- public static final String APPLICATION_PROPERTY_PULSE_PRODUCTSUPPORT = "pulse.product";
- public static final String APPLICATION_PROPERTY_PULSE_SEC_PROFILE_GEMFIRE = "pulse.authentication.gemfire";
- public static final String APPLICATION_PROPERTY_PULSE_SEC_PROFILE_DEFAULT = "pulse.authentication.default";
- public static final String APPLICATION_PROPERTY_PULSE_SPRING_PROFILE_KEY = "spring.profiles.default";
-
- // STRING FLAGS
- public static final String STRING_FLAG_TRUE = "true";
- public static final String STRING_FLAG_FALSE = "false";
- public static final String DEFAULT_SERVER_GROUP = "Default";
- public static final String DEFAULT_REDUNDANCY_ZONE = "Default";
- public static final String JVM_PAUSES_TYPE_CLUSTER = "cluster";
- public static final String JVM_PAUSES_TYPE_MEMBER = "member";
-
- // CONSTANTS FOR MBEAN DATA
- public static final String OBJECT_DOMAIN_NAME_GEMFIRE = "GemFire";
- public static final String OBJECT_DOMAIN_NAME_SQLFIRE = "GemFireXD";
- public static final String OBJECT_NAME_MEMBER = OBJECT_DOMAIN_NAME_GEMFIRE + ":type=Member,*";
- public static final String OBJECT_NAME_MEMBER_MANAGER = OBJECT_DOMAIN_NAME_GEMFIRE + ":service=Manager,type=Member,*";
- public static final String OBJECT_NAME_SYSTEM_DISTRIBUTED = OBJECT_DOMAIN_NAME_GEMFIRE + ":service=System,type=Distributed";
- public static final String OBJECT_NAME_REGION_DISTRIBUTED = OBJECT_DOMAIN_NAME_GEMFIRE + ":service=Region,type=Distributed,*";
- public static final String OBJECT_NAME_STATEMENT_DISTRIBUTED = OBJECT_DOMAIN_NAME_SQLFIRE + ":service=Statement,type=Aggregate,*";
- public static final String OBJECT_NAME_SF_CLUSTER = OBJECT_DOMAIN_NAME_SQLFIRE + ":service=Cluster";
- public static final String OBJECT_NAME_SF_MEMBER_PATTERN = OBJECT_DOMAIN_NAME_SQLFIRE + ":group=*,type=Member,member=";
- public static final String OBJECT_NAME_TABLE_AGGREGATE = OBJECT_DOMAIN_NAME_SQLFIRE + ":service=Table,type=Aggregate,table=*";
- public static final String OBJECT_NAME_TABLE_AGGREGATE_PATTERN = OBJECT_DOMAIN_NAME_SQLFIRE + ":service=Table,type=Aggregate,table=";
- public static final String OBJECT_NAME_REGION_ON_MEMBER_REGION = OBJECT_DOMAIN_NAME_GEMFIRE + ":service=Region,name=";
- public static final String OBJECT_NAME_REGION_ON_MEMBER_MEMBER = ",type=Member,member=";
- public static final String OBJECT_NAME_ACCESSCONTROL_MBEAN = "GemFire:service=AccessControl,type=Distributed";
-
- public static final String MBEAN_KEY_PROPERTY_SERVICE = "service";
- public static final String MBEAN_KEY_PROPERTY_SERVICE_VALUE_REGION = "Region";
- public static final String MBEAN_KEY_PROPERTY_SERVICE_VALUE_CACHESERVER = "CacheServer";
- public static final String MBEAN_KEY_PROPERTY_SERVICE_VALUE_GATEWAYRECEIVER = "GatewayReceiver";
- public static final String MBEAN_KEY_PROPERTY_SERVICE_VALUE_GATEWAYSENDER = "GatewaySender";
- public static final String MBEAN_KEY_PROPERTY_SERVICE_VALUE_ASYNCEVENTQUEUE = "AsyncEventQueue";
- public static final String MBEAN_KEY_PROPERTY_SERVICE_VALUE_LOCATOR = "Locator";
- public static final String MBEAN_KEY_PROPERTY_REGION_NAME = "name";
-
- public static final String MBEAN_KEY_PROPERTY_MEMBER = "member";
-
- public static final String MBEAN_ATTRIBUTE_MEMBER = "Member";
- public static final String MBEAN_ATTRIBUTE_MEMBERS = "Members";
- public static final String MBEAN_ATTRIBUTE_MANAGER = "Manager";
- public static final String MBEAN_ATTRIBUTE_LOCATOR = "Locator";
- public static final String MBEAN_ATTRIBUTE_SERVER = "Server";
- public static final String MBEAN_ATTRIBUTE_SERVERGROUPS = "Groups";
- public static final String MBEAN_ATTRIBUTE_REDUNDANCYZONES = "RedundancyZone";
- public static final String MBEAN_ATTRIBUTE_DATASTORE = "DataStore";
- public static final String MBEAN_ATTRIBUTE_ID = "Id";
-
- public static final String MBEAN_ATTRIBUTE_GEMFIREVERSION = "Version";
- public static final String MBEAN_ATTRIBUTE_MEMBERCOUNT = "MemberCount";
- public static final String MBEAN_ATTRIBUTE_NUMCLIENTS = "NumClients";
- public static final String MBEAN_ATTRIBUTE_NETWORKSERVERCLIENTCONNECTIONSTATS = "NetworkServerClientConnectionStats";
- public static final String MBEAN_ATTRIBUTE_DISTRIBUTEDSYSTEMID = "DistributedSystemId";
- public static final String MBEAN_ATTRIBUTE_LOCATORCOUNT = "LocatorCount";
- public static final String MBEAN_ATTRIBUTE_TOTALREGIONCOUNT = "TotalRegionCount";
- public static final String MBEAN_ATTRIBUTE_NUMRUNNIGFUNCTION = "NumRunningFunctions";
- public static final String MBEAN_ATTRIBUTE_PROCEDURECALLSCOMPLETED = "ProcedureCallsCompleted";
- public static final String MBEAN_ATTRIBUTE_PROCEDURECALLSINPROGRESS = "ProcedureCallsInProgress";
- public static final String MBEAN_ATTRIBUTE_REGISTEREDCQCOUNT = "RegisteredCQCount";
- public static final String MBEAN_ATTRIBUTE_NUMSUBSCRIPTIONS = "NumSubscriptions";
- public static final String MBEAN_ATTRIBUTE_NUMTXNCOMMITTED = "TransactionCommitted";
- public static final String MBEAN_ATTRIBUTE_NUMTXNROLLBACK = "TransactionRolledBack";
- public static final String MBEAN_ATTRIBUTE_TOTALHEAPSIZE = "TotalHeapSize";
- public static final String MBEAN_ATTRIBUTE_USEDHEAPSIZE = "UsedHeapSize";
- public static final String MBEAN_ATTRIBUTE_OFFHEAPFREESIZE = "OffHeapFreeSize";
- public static final String MBEAN_ATTRIBUTE_OFFHEAPUSEDSIZE = "OffHeapUsedSize";
- public static final String MBEAN_ATTRIBUTE_TOTALREGIONENTRYCOUNT = "TotalRegionEntryCount";
- public static final String MBEAN_ATTRIBUTE_CURRENTENTRYCOUNT = "CurrentQueryCount";
- public static final String MBEAN_ATTRIBUTE_TOTALDISKUSAGE = "TotalDiskUsage";
- public static final String MBEAN_ATTRIBUTE_DISKWRITESRATE = "DiskWritesRate";
- public static final String MBEAN_ATTRIBUTE_AVERAGEWRITES = "AverageWrites";
- public static final String MBEAN_ATTRIBUTE_DISKREADSRATE = "DiskReadsRate";
- public static final String MBEAN_ATTRIBUTE_AVERAGEREADS = "AverageReads";
- public static final String MBEAN_ATTRIBUTE_QUERYREQUESTRATE = "QueryRequestRate";
- public static final String MBEAN_ATTRIBUTE_JVMPAUSES = "JVMPauses";
- public static final String MBEAN_ATTRIBUTE_HOST = "Host";
- public static final String MBEAN_ATTRIBUTE_HOSTNAMEFORCLIENTS = "HostnameForClients";
- public static final String MBEAN_ATTRIBUTE_HOSTNAMEFORCLIENTS_ALT = "HostNameForClients";
- public static final String MBEAN_ATTRIBUTE_BINDADDRESS = "BindAddress";
- public static final String MBEAN_ATTRIBUTE_PORT = "Port";
- public static final String MBEAN_ATTRIBUTE_EVENTRECEIVEDDATE = "EventsReceivedRate";
- public static final String MBEAN_ATTRIBUTE_AVEARGEBATCHPROCESSINGTIME = "AverageBatchProcessingTime";
- public static final String MBEAN_ATTRIBUTE_RUNNING = "Running";
- public static final String MBEAN_ATTRIBUTE_BATCHSIZE = "BatchSize";
- public static final String MBEAN_ATTRIBUTE_SENDERID = "SenderId";
- public static final String MBEAN_ATTRIBUTE_EVENTQUEUESIZE = "EventQueueSize";
- public static final String MBEAN_ATTRIBUTE_PRIMARY = "Primary";
- public static final String MBEAN_ATTRIBUTE_PERSISTENCEENABLED = "PersistenceEnabled";
- public static final String MBEAN_ATTRIBUTE_PARALLEL = "Parallel";
- public static final String MBEAN_ATTRIBUTE_REMOTE_DS_ID = "RemoteDSId";
- public static final String MBEAN_ATTRIBUTE_EVENTS_EXCEEDING_ALERT_THRESHOLD = "EventsExceedingAlertThreshold";
- public static final String MBEAN_ATTRIBUTE_FULLPATH = "FullPath";
- public static final String MBEAN_ATTRIBUTE_EMPTYNODES = "EmptyNodes";
- public static final String MBEAN_ATTRIBUTE_GETSRATE = "GetsRate";
- public static final String MBEAN_ATTRIBUTE_PUTSRATE = "PutsRate";
- public static final String MBEAN_ATTRIBUTE_LRUEVICTIONRATE = "LruEvictionRate";
- public static final String MBEAN_ATTRIBUTE_REGIONTYPE = "RegionType";
- public static final String MBEAN_ATTRIBUTE_ENTRYSIZE = "EntrySize";
- public static final String MBEAN_ATTRIBUTE_SYSTEMREGIONENTRYCOUNT = "SystemRegionEntryCount";
- public static final String MBEAN_ATTRIBUTE_PERSISTENTENABLED = "PersistentEnabled";
- public static final String MBEAN_ATTRIBUTE_NAME = "Name";
- public static final String MBEAN_ATTRIBUTE_GATEWAYENABLED = "GatewayEnabled";
- public static final String MBEAN_ATTRIBUTE_DISKUSAGE = "DiskUsage";
- public static final String MBEAN_ATTRIBUTE_TOTALFILEDESCRIPTOROPEN = "TotalFileDescriptorOpen";
- public static final String MBEAN_ATTRIBUTE_LOADAVERAGE = "LoadAverage";
- public static final String MBEAN_ATTRIBUTE_CURRENTHEAPSIZE = "CurrentHeapSize"; // deprecated in Gemfire8.1
- public static final String MBEAN_ATTRIBUTE_USEDMEMORY = "UsedMemory";
- public static final String MBEAN_ATTRIBUTE_MAXIMUMHEAPSIZE = "MaximumHeapSize"; // deprecated in Gemfire8.1
- public static final String MBEAN_ATTRIBUTE_MAXMEMORY = "MaxMemory";
- public static final String MBEAN_ATTRIBUTE_NUMTHREADS = "NumThreads";
- public static final String MBEAN_ATTRIBUTE_MEMBERUPTIME = "MemberUpTime";
- public static final String MBEAN_ATTRIBUTE_TOTALBYTESONDISK = "TotalBytesOnDisk";
- public static final String MBEAN_ATTRIBUTE_CPUUSAGE = "CpuUsage";
- public static final String MBEAN_ATTRIBUTE_HOSTCPUUSAGE = "HostCpuUsage";
- public static final String MBEAN_ATTRIBUTE_ENTRYCOUNT = "EntryCount";
- public static final String MBEAN_ATTRIBUTE_NUMBEROFROWS = "NumberOfRows";
- public static final String MBEAN_ATTRIBUTE_LOCALMAXMEMORY = "LocalMaxMemory";
-
- public static final String MBEAN_ATTRIBUTE_NUMTIMESCOMPILED = "NumTimesCompiled";
- public static final String MBEAN_ATTRIBUTE_NUMEXECUTION = "NumExecution";
- public static final String MBEAN_ATTRIBUTE_NUMEXECUTIONSINPROGRESS = "NumExecutionsInProgress";
- public static final String MBEAN_ATTRIBUTE_NUMTIMESGLOBALINDEXLOOKUP = "NumTimesGlobalIndexLookup";
- public static final String MBEAN_ATTRIBUTE_NUMROWSMODIFIED = "NumRowsModified";
- public static final String MBEAN_ATTRIBUTE_PARSETIME = "ParseTime";
- public static final String MBEAN_ATTRIBUTE_BINDTIME = "BindTime";
- public static final String MBEAN_ATTRIBUTE_OPTIMIZETIME = "OptimizeTime";
- public static final String MBEAN_ATTRIBUTE_ROUTINGINFOTIME = "RoutingInfoTime";
- public static final String MBEAN_ATTRIBUTE_GENERATETIME = "GenerateTime";
- public static final String MBEAN_ATTRIBUTE_TOTALCOMPILATIONTIME = "TotalCompilationTime";
- public static final String MBEAN_ATTRIBUTE_EXECUTIONTIME = "ExecutionTime";
- public static final String MBEAN_ATTRIBUTE_PROJECTIONTIME = "ProjectionTime";
- public static final String MBEAN_ATTRIBUTE_TOTALEXECUTIONTIME = "TotalExecutionTime";
- public static final String MBEAN_ATTRIBUTE_ROWSMODIFICATIONTIME = "RowsModificationTime";
- public static final String MBEAN_ATTRIBUTE_QNNUMROWSSEEN = "QNNumRowsSeen";
- public static final String MBEAN_ATTRIBUTE_QNMSGSENDTIME = "QNMsgSendTime";
- public static final String MBEAN_ATTRIBUTE_QNMSGSERTIME = "QNMsgSerTime";
- public static final String MBEAN_ATTRIBUTE_QNRESPDESERTIME = "QNRespDeSerTime";
- public static final String MBEAN_ATTRIBUTE_QUERYDEFINITION = "Query";
-
- public static final String MBEAN_ATTRIBUTE_AEQ_ASYNCEVENTID = "Id";
- public static final String MBEAN_ATTRIBUTE_AEQ_PRIMARY = "Primary";
- public static final String MBEAN_ATTRIBUTE_AEQ_PARALLEL = "Parallel";
- public static final String MBEAN_ATTRIBUTE_AEQ_BATCH_SIZE = "BatchSize";
- public static final String MBEAN_ATTRIBUTE_AEQ_BATCH_TIME_INTERVAL = "BatchTimeInterval";
- public static final String MBEAN_ATTRIBUTE_AEQ_BATCH_CONFLATION_ENABLED = "BatchConflationEnabled";
- public static final String MBEAN_ATTRIBUTE_AEQ_ASYNC_EVENT_LISTENER = "AsyncEventListener";
- public static final String MBEAN_ATTRIBUTE_AEQ_EVENT_QUEUE_SIZE = "EventQueueSize";
-
- // column names
- public static final String MBEAN_COLNAME_NUMTIMESCOMPILED = "NumTimesCompiled";
- public static final String MBEAN_COLNAME_NUMEXECUTION = "NumExecution";
- public static final String MBEAN_COLNAME_NUMEXECUTIONSINPROGRESS = "NumExecutionsInProgress";
- public static final String MBEAN_COLNAME_NUMTIMESGLOBALINDEXLOOKUP = "NumTimesGlobalIndexLookup";
- public static final String MBEAN_COLNAME_NUMROWSMODIFIED = "NumRowsModified";
- public static final String MBEAN_COLNAME_PARSETIME = "ParseTime(ms)";
- public static final String MBEAN_COLNAME_BINDTIME = "BindTime(ms)";
- public static final String MBEAN_COLNAME_OPTIMIZETIME = "OptimizeTime(ms)";
- public static final String MBEAN_COLNAME_ROUTINGINFOTIME = "RoutingInfoTime(ms)";
- public static final String MBEAN_COLNAME_GENERATETIME = "GenerateTime(ms)";
- public static final String MBEAN_COLNAME_TOTALCOMPILATIONTIME = "TotalCompilationTime(ms)";
- public static final String MBEAN_COLNAME_EXECUTIONTIME = "ExecutionTime(ns)";
- public static final String MBEAN_COLNAME_PROJECTIONTIME = "ProjectionTime(ns)";
- public static final String MBEAN_COLNAME_TOTALEXECUTIONTIME = "TotalExecutionTime(ns)";
- public static final String MBEAN_COLNAME_ROWSMODIFICATIONTIME = "RowsModificationTime(ns)";
- public static final String MBEAN_COLNAME_QNNUMROWSSEEN = "QNNumRowsSeen";
- public static final String MBEAN_COLNAME_QNMSGSENDTIME = "QNMsgSendTime(ns)";
- public static final String MBEAN_COLNAME_QNMSGSERTIME = "QNMsgSerTime(ns)";
- public static final String MBEAN_COLNAME_QNRESPDESERTIME = "QNRespDeSerTime(ns)";
- public static final String MBEAN_COLNAME_QUERYDEFINITION = "Query";
-
- // TODO : add attributes for aggregate statistics
- // public static final String MBEAN_ATTRIBUTE_ENTRYCOUNT = "EntryCount";
-
- public static final String MBEAN_MANAGER_ATTRIBUTE_PULSEURL = "PulseURL";
-
- public static final String MBEAN_OPERATION_LISTCACHESERVER = "listCacheServers";
- public static final String MBEAN_OPERATION_LISTSERVERS = "listServers";
- public static final String MBEAN_OPERATION_VIEWREMOTECLUSTERSTATUS = "viewRemoteClusterStatus";
- public static final String MBEAN_OPERATION_SHOWALLCLIENTS = "showAllClientStats";
- public static final String MBEAN_OPERATION_LISTREGIONATTRIBUTES = "listRegionAttributes";
- public static final String MBEAN_OPERATION_QUERYDATABROWSER = "queryData";
-
- // COMPOSITE DATA KEYS
- public static final String COMPOSITE_DATA_KEY_CLIENTID = "clientId";
- public static final String COMPOSITE_DATA_KEY_NAME = "name";
- public static final String COMPOSITE_DATA_KEY_HOSTNAME = "hostName";
- public static final String COMPOSITE_DATA_KEY_QUEUESIZE = "queueSize";
- public static final String COMPOSITE_DATA_KEY_PROCESSCPUTIME = "processCpuTime";
- public static final String COMPOSITE_DATA_KEY_UPTIME = "upTime";
- public static final String COMPOSITE_DATA_KEY_NUMOFTHREADS = "numOfThreads";
- public static final String COMPOSITE_DATA_KEY_NUMOFGETS = "numOfGets";
- public static final String COMPOSITE_DATA_KEY_NUMOFPUTS = "numOfPuts";
- public static final String COMPOSITE_DATA_KEY_CPUS = "cpus";
- public static final String COMPOSITE_DATA_KEY_CLIENTCQCOUNT = "clientCQCount";
- public static final String COMPOSITE_DATA_KEY_SUBSCRIPTIONENABLED = "subscriptionEnabled";
- public static final String COMPOSITE_DATA_KEY_SCOPE = "scope";
- public static final String COMPOSITE_DATA_KEY_DISKSTORENAME = "diskStoreName";
- public static final String COMPOSITE_DATA_KEY_DISKSYNCHRONOUS = "diskSynchronous";
- public static final String COMPOSITE_DATA_KEY_COMPRESSIONCODEC = "compressionCodec";
- public static final String COMPOSITE_DATA_KEY_ENABLEOFFHEAPMEMORY = "enableOffHeapMemory";
- public static final String COMPOSITE_DATA_KEY_CONNECTIONSACTIVE = "connectionsActive";
- public static final String COMPOSITE_DATA_KEY_CONNECTED = "connected";
-
- public static final String ALERT_DESC_SEVERE = "Severe Alert! The cluster is on fire !";
- public static final String ALERT_DESC_ERROR = "Error Alert! There is a problem with your cluster ! Better fix it !";
- public static final String ALERT_DESC_WARNING = "Warning Alert! Look at this cluster after you finish your coffee !";
- public static final String ALERT_DESC_INFO = "Info Alert! For your kind information !";
-
- public static final String NOTIFICATION_TYPE_SYSTEM_ALERT = "system.alert";
- public static final String NOTIFICATION_TYPE_CACHE_MEMBER_DEPARTED = "gemfire.distributedsystem.cache.member.departed";
- public static final String NOTIFICATION_TYPE_REGION_DESTROYED = "gemfire.distributedsystem.cache.region.closed";
-
- public static final String PRODUCT_NAME_GEMFIRE = "gemfire"; // For GemFire
- public static final String PRODUCT_NAME_SQLFIRE = "gemfirexd"; // For SQLFire
-
- //Following attributes are not present in 9.0
- //"Members"
- //"EmptyNodes"
- //"SystemRegionEntryCount"
- //"MemberCount"
- public static final String[] REGION_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_MEMBERS, MBEAN_ATTRIBUTE_FULLPATH,
- MBEAN_ATTRIBUTE_DISKREADSRATE, MBEAN_ATTRIBUTE_DISKWRITESRATE,
- MBEAN_ATTRIBUTE_EMPTYNODES, MBEAN_ATTRIBUTE_GETSRATE,
- MBEAN_ATTRIBUTE_LRUEVICTIONRATE, MBEAN_ATTRIBUTE_PUTSRATE,
- MBEAN_ATTRIBUTE_REGIONTYPE, MBEAN_ATTRIBUTE_ENTRYSIZE,
- MBEAN_ATTRIBUTE_ENTRYCOUNT, MBEAN_ATTRIBUTE_SYSTEMREGIONENTRYCOUNT,
- MBEAN_ATTRIBUTE_MEMBERCOUNT, MBEAN_ATTRIBUTE_PERSISTENTENABLED,
- MBEAN_ATTRIBUTE_NAME, MBEAN_ATTRIBUTE_GATEWAYENABLED,
- MBEAN_ATTRIBUTE_DISKUSAGE, MBEAN_ATTRIBUTE_LOCALMAXMEMORY };
-
- public static final String[] CLUSTER_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_MEMBERCOUNT, MBEAN_ATTRIBUTE_NUMCLIENTS,
- MBEAN_ATTRIBUTE_DISTRIBUTEDSYSTEMID, MBEAN_ATTRIBUTE_LOCATORCOUNT,
- MBEAN_ATTRIBUTE_TOTALREGIONCOUNT, MBEAN_ATTRIBUTE_NUMRUNNIGFUNCTION,
- MBEAN_ATTRIBUTE_REGISTEREDCQCOUNT, MBEAN_ATTRIBUTE_NUMSUBSCRIPTIONS,
- MBEAN_ATTRIBUTE_NUMTXNCOMMITTED, MBEAN_ATTRIBUTE_NUMTXNROLLBACK,
- MBEAN_ATTRIBUTE_TOTALHEAPSIZE, MBEAN_ATTRIBUTE_USEDHEAPSIZE,
- MBEAN_ATTRIBUTE_TOTALREGIONENTRYCOUNT, MBEAN_ATTRIBUTE_CURRENTENTRYCOUNT,
- MBEAN_ATTRIBUTE_TOTALDISKUSAGE, MBEAN_ATTRIBUTE_DISKWRITESRATE,
- MBEAN_ATTRIBUTE_AVERAGEWRITES, MBEAN_ATTRIBUTE_AVERAGEREADS,
- MBEAN_ATTRIBUTE_QUERYREQUESTRATE, MBEAN_ATTRIBUTE_DISKREADSRATE,
- MBEAN_ATTRIBUTE_JVMPAUSES };
-
- public static final String[] GATEWAY_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_PORT, MBEAN_ATTRIBUTE_EVENTRECEIVEDDATE,
- MBEAN_ATTRIBUTE_AVEARGEBATCHPROCESSINGTIME, MBEAN_ATTRIBUTE_RUNNING };
-
- public static final String[] GATEWAYSENDER_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_EVENTRECEIVEDDATE, MBEAN_ATTRIBUTE_BATCHSIZE,
- MBEAN_ATTRIBUTE_SENDERID, MBEAN_ATTRIBUTE_EVENTQUEUESIZE,
- MBEAN_ATTRIBUTE_RUNNING, MBEAN_ATTRIBUTE_PRIMARY,
- MBEAN_ATTRIBUTE_PERSISTENCEENABLED, MBEAN_ATTRIBUTE_PARALLEL,
- MBEAN_ATTRIBUTE_REMOTE_DS_ID, MBEAN_ATTRIBUTE_EVENTS_EXCEEDING_ALERT_THRESHOLD};
-
- public static final String[] ASYNC_EVENT_QUEUE_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_AEQ_ASYNCEVENTID, MBEAN_ATTRIBUTE_AEQ_PRIMARY,
- MBEAN_ATTRIBUTE_AEQ_PARALLEL, MBEAN_ATTRIBUTE_AEQ_BATCH_SIZE,
- MBEAN_ATTRIBUTE_AEQ_BATCH_TIME_INTERVAL, MBEAN_ATTRIBUTE_AEQ_BATCH_CONFLATION_ENABLED,
- MBEAN_ATTRIBUTE_AEQ_ASYNC_EVENT_LISTENER, MBEAN_ATTRIBUTE_AEQ_EVENT_QUEUE_SIZE};
-
- public static final String[] MEMBER_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_MANAGER, MBEAN_ATTRIBUTE_TOTALREGIONCOUNT,
- MBEAN_ATTRIBUTE_LOCATOR, MBEAN_ATTRIBUTE_TOTALDISKUSAGE,
- MBEAN_ATTRIBUTE_SERVER, MBEAN_ATTRIBUTE_TOTALFILEDESCRIPTOROPEN,
- MBEAN_ATTRIBUTE_LOADAVERAGE, MBEAN_ATTRIBUTE_DISKWRITESRATE,
- MBEAN_ATTRIBUTE_DISKREADSRATE, MBEAN_ATTRIBUTE_JVMPAUSES,
- MBEAN_ATTRIBUTE_USEDMEMORY, MBEAN_ATTRIBUTE_MAXMEMORY,
- MBEAN_ATTRIBUTE_NUMTHREADS, MBEAN_ATTRIBUTE_MEMBERUPTIME,
- MBEAN_ATTRIBUTE_HOST, MBEAN_ATTRIBUTE_HOSTNAMEFORCLIENTS,
- MBEAN_ATTRIBUTE_BINDADDRESS, MBEAN_ATTRIBUTE_TOTALBYTESONDISK,
- MBEAN_ATTRIBUTE_CPUUSAGE, MBEAN_ATTRIBUTE_HOSTCPUUSAGE,
- MBEAN_ATTRIBUTE_MEMBER, MBEAN_ATTRIBUTE_ID, MBEAN_ATTRIBUTE_AVERAGEREADS,
- MBEAN_ATTRIBUTE_AVERAGEWRITES, MBEAN_ATTRIBUTE_OFFHEAPFREESIZE,
- MBEAN_ATTRIBUTE_OFFHEAPUSEDSIZE, MBEAN_ATTRIBUTE_SERVERGROUPS,
- MBEAN_ATTRIBUTE_REDUNDANCYZONES, MBEAN_ATTRIBUTE_GEMFIREVERSION };
-
- public static final String[] STATEMENT_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_NAME, MBEAN_ATTRIBUTE_NUMTIMESCOMPILED,
- MBEAN_ATTRIBUTE_NUMEXECUTION, MBEAN_ATTRIBUTE_NUMEXECUTIONSINPROGRESS,
- MBEAN_ATTRIBUTE_NUMTIMESGLOBALINDEXLOOKUP,
- MBEAN_ATTRIBUTE_NUMROWSMODIFIED, MBEAN_ATTRIBUTE_PARSETIME,
- MBEAN_ATTRIBUTE_BINDTIME, MBEAN_ATTRIBUTE_OPTIMIZETIME,
- MBEAN_ATTRIBUTE_ROUTINGINFOTIME, MBEAN_ATTRIBUTE_GENERATETIME,
- MBEAN_ATTRIBUTE_TOTALCOMPILATIONTIME, MBEAN_ATTRIBUTE_EXECUTIONTIME,
- MBEAN_ATTRIBUTE_PROJECTIONTIME, MBEAN_ATTRIBUTE_TOTALEXECUTIONTIME,
- MBEAN_ATTRIBUTE_ROWSMODIFICATIONTIME, MBEAN_ATTRIBUTE_QNNUMROWSSEEN,
- MBEAN_ATTRIBUTE_QNMSGSENDTIME, MBEAN_ATTRIBUTE_QNMSGSERTIME };
-
- public static final String[] REGION_ON_MEMBER_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_ENTRYSIZE,
- MBEAN_ATTRIBUTE_ENTRYCOUNT,
- MBEAN_ATTRIBUTE_PUTSRATE,
- MBEAN_ATTRIBUTE_GETSRATE,
- MBEAN_ATTRIBUTE_DISKREADSRATE,
- MBEAN_ATTRIBUTE_DISKWRITESRATE,
- MBEAN_ATTRIBUTE_LOCALMAXMEMORY
- };
-
- public static final String[] SF_CLUSTER_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_PROCEDURECALLSINPROGRESS,
- MBEAN_ATTRIBUTE_NETWORKSERVERCLIENTCONNECTIONSTATS };
-
- public static final String[] SF_MEMBER_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_DATASTORE,
- MBEAN_ATTRIBUTE_NETWORKSERVERCLIENTCONNECTIONSTATS };
-
- public static final String[] SF_TABLE_MBEAN_ATTRIBUTES = {
- MBEAN_ATTRIBUTE_ENTRYSIZE, MBEAN_ATTRIBUTE_NUMBEROFROWS };
-
- public static final String PULSE_ROLES[] = {
- "CLUSTER:READ",
- "DATA:READ"
- };
-
- // SSL Related attributes
-
- public static final String SSL_KEYSTORE = "javax.net.ssl.keyStore";
- public static final String SSL_KEYSTORE_PASSWORD = "javax.net.ssl.keyStorePassword";
- public static final String SSL_TRUSTSTORE = "javax.net.ssl.trustStore";
- public static final String SSL_TRUSTSTORE_PASSWORD = "javax.net.ssl.trustStorePassword";
- public static final String SSL_ENABLED_CIPHERS = "javax.rmi.ssl.client.enabledCipherSuites";
- public static final String SSL_ENABLED_PROTOCOLS = "javax.rmi.ssl.client.enabledProtocols";
-
- public static final String SYSTEM_PROPERTY_PULSE_USESSL_LOCATOR = "pulse.useSSL.locator";
- public static final String SYSTEM_PROPERTY_PULSE_USESSL_MANAGER = "pulse.useSSL.manager";
-
- public static final String REQUEST_PARAM_REGION_FULL_PATH = "regionFullPath";
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseVersion.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseVersion.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseVersion.java
deleted file mode 100644
index e7b62a2..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/PulseVersion.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.data;
-
-import java.util.ResourceBundle;
-
-/**
- * Class PulseVersion
- *
- * This class is for holding Pulse Applications Version's details (like version
- * details, build details, source details, etc) from properties file
- *
- * @since GemFire version Helios
- */
-
-public class PulseVersion {
-
- private String pulseVersion;
-
- public String getPulseVersion() {
- return pulseVersion;
- }
-
- public void setPulseVersion(String pulseVersion) {
- this.pulseVersion = pulseVersion;
- }
-
- private String pulseBuildId;
-
- public String getPulseBuildId() {
- return pulseBuildId;
- }
-
- public void setPulseBuildId(String pulseBuildId) {
- this.pulseBuildId = pulseBuildId;
- }
-
- private String pulseBuildDate;
-
- public String getPulseBuildDate() {
- return pulseBuildDate;
- }
-
- public void setPulseBuildDate(String pulseBuildDate) {
- this.pulseBuildDate = pulseBuildDate;
- }
-
- private String pulseSourceDate;
-
- public String getPulseSourceDate() {
- return pulseSourceDate;
- }
-
- public void setPulseSourceDate(String pulseSourceDate) {
- this.pulseSourceDate = pulseSourceDate;
- }
-
- private String pulseSourceRevision;
-
- public String getPulseSourceRevision() {
- return pulseSourceRevision;
- }
-
- public void setPulseSourceRevision(String pulseSourceRevision) {
- this.pulseSourceRevision = pulseSourceRevision;
- }
-
- private String pulseSourceRepository;
-
- public String getPulseSourceRepository() {
- return pulseSourceRepository;
- }
-
- public void setPulseSourceRepository(String pulseSourceRepository) {
- this.pulseSourceRepository = pulseSourceRepository;
- }
-
- public String getPulseVersionLogMessage() {
- ResourceBundle resourceBundle = Repository.get().getResourceBundle();
- String logMessage = resourceBundle.getString("LOG_MSG_PULSE_VERSION") + " "
- + this.getPulseVersion() + " " + this.getPulseBuildId() + " "
- + this.getPulseBuildDate();
- return logMessage;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/Repository.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/Repository.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/Repository.java
deleted file mode 100644
index 8eea7cc..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/data/Repository.java
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.data;
-
-import com.vmware.geode.tools.pulse.internal.log.PulseLogWriter;
-import org.springframework.security.core.Authentication;
-import org.springframework.security.core.context.SecurityContextHolder;
-
-import java.net.ConnectException;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Locale;
-import java.util.Map;
-import java.util.ResourceBundle;
-
-/**
- * A Singleton instance of the memory cache for clusters.
- *
- * @since GemFire version 7.0.Beta 2012-09-23
- */
-public class Repository {
- private PulseLogWriter LOGGER;
-
- private static Repository instance = new Repository();
- private HashMap<String, Cluster> clusterMap = new HashMap<String, Cluster>();
- private Boolean jmxUseLocator;
- private String jmxHost;
- private String jmxPort;
- private String jmxUserName;
- private String jmxUserPassword;
- private Boolean isEmbeddedMode;
- private boolean useSSLLocator = false;
- private boolean useSSLManager = false;
- private boolean useGemFireCredentials = false;
-
-
- private String pulseWebAppUrl;
-
- Locale locale = new Locale(PulseConstants.APPLICATION_LANGUAGE,
- PulseConstants.APPLICATION_COUNTRY);
-
- private ResourceBundle resourceBundle = ResourceBundle.getBundle(
- PulseConstants.LOG_MESSAGES_FILE, locale);
-
- private PulseConfig pulseConfig = new PulseConfig();
-
- private Repository() {
-
- }
-
- public static Repository get() {
- return instance;
- }
-
- public Boolean getJmxUseLocator() {
- return this.jmxUseLocator;
- }
-
- public void setJmxUseLocator(Boolean jmxUseLocator) {
- this.jmxUseLocator = jmxUseLocator;
- }
-
- public String getJmxHost() {
- return this.jmxHost;
- }
-
- public void setJmxHost(String jmxHost) {
- this.jmxHost = jmxHost;
- }
-
- public String getJmxPort() {
- return this.jmxPort;
- }
-
- public void setJmxPort(String jmxPort) {
- this.jmxPort = jmxPort;
- }
-
- public String getJmxUserName() {
- return this.jmxUserName;
- }
-
- public void setJmxUserName(String jmxUserName) {
- this.jmxUserName = jmxUserName;
- }
-
- public String getJmxUserPassword() {
- return this.jmxUserPassword;
- }
-
- public void setJmxUserPassword(String jmxUserPassword) {
- this.jmxUserPassword = jmxUserPassword;
- }
-
- public Boolean getIsEmbeddedMode() {
- return this.isEmbeddedMode;
- }
-
- public void setIsEmbeddedMode(Boolean isEmbeddedMode) {
- this.isEmbeddedMode = isEmbeddedMode;
- }
-
- public boolean isUseSSLLocator() {
- return useSSLLocator;
- }
-
- public void setUseSSLLocator(boolean useSSLLocator) {
- this.useSSLLocator = useSSLLocator;
- }
-
- public boolean isUseSSLManager() {
- return useSSLManager;
- }
-
- public void setUseSSLManager(boolean useSSLManager) {
- this.useSSLManager = useSSLManager;
- }
-
- public String getPulseWebAppUrl() {
- return this.pulseWebAppUrl;
- }
-
- public void setPulseWebAppUrl(String pulseWebAppUrl) {
- this.pulseWebAppUrl = pulseWebAppUrl;
- }
-
- public PulseConfig getPulseConfig() {
- return this.pulseConfig;
- }
-
- public void setPulseConfig(PulseConfig pulseConfig) {
- this.pulseConfig = pulseConfig;
- }
-
- /**
- * we're maintaining a 1:1 mapping between webapp and cluster, there is no need for a map of clusters based on the host and port
- * We are using this clusterMap to maintain cluster for different users now.
- * For a single-user connection to gemfire JMX, we will use the default username/password in the pulse.properties
- * (# JMX User Properties )
- * pulse.jmxUserName=admin
- * pulse.jmxUserPassword=admin
- *
- * But for multi-user connections to gemfireJMX, i.e pulse that uses gemfire integrated security, we will need to get the username form the context
- */
- public Cluster getCluster() {
- String username = null;
- String password = null;
- if(useGemFireCredentials) {
- Authentication auth = SecurityContextHolder.getContext().getAuthentication();
- if(auth!=null) {
- username = auth.getName();
- password = (String) auth.getCredentials();
- }
- }
- else{
- username = this.jmxUserName;
- password = this.jmxUserPassword;
- }
- return this.getCluster(username, password);
- }
-
- public Cluster getCluster(String username, String password) {
- synchronized (this.clusterMap) {
- String key = username;
- Cluster data = this.clusterMap.get(key);
-
- LOGGER = PulseLogWriter.getLogger();
-
- if (data == null) {
- try {
- if (LOGGER.infoEnabled()) {
- LOGGER.info(resourceBundle.getString("LOG_MSG_CREATE_NEW_THREAD")
- + " : " + key);
- }
- data = new Cluster(this.jmxHost, this.jmxPort, username, password);
- // Assign name to thread created
- data.setName(PulseConstants.APP_NAME + "-" + this.jmxHost + ":" + this.jmxPort + ":" + username);
- // Start Thread
- data.start();
- this.clusterMap.put(key, data);
- } catch (ConnectException e) {
- data = null;
- if (LOGGER.fineEnabled()) {
- LOGGER.fine(e.getMessage());
- }
- }
- }
- return data;
- }
- }
-
- private String getClusterKey(String host, String port) {
- return host + ":" + port;
- }
-
- // This method is used to remove all cluster threads
- public void removeAllClusters() {
-
- Iterator<Map.Entry<String, Cluster>> iter = clusterMap.entrySet()
- .iterator();
-
- while (iter.hasNext()) {
- Map.Entry<String, Cluster> entry = iter.next();
- Cluster c = entry.getValue();
- String clusterKey = entry.getKey();
- c.stopThread();
- iter.remove();
- if (LOGGER.infoEnabled()) {
- LOGGER.info(resourceBundle.getString("LOG_MSG_REMOVE_THREAD") + " : "
- + clusterKey.toString());
- }
- }
- }
-
- public ResourceBundle getResourceBundle() {
- return this.resourceBundle;
- }
-
- public boolean isUseGemFireCredentials() {
- return useGemFireCredentials;
- }
-
- public void setUseGemFireCredentials(boolean useGemFireCredentials) {
- this.useGemFireCredentials = useGemFireCredentials;
- }
-
-
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/CDL.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/CDL.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/CDL.java
deleted file mode 100644
index 56ffeb8..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/CDL.java
+++ /dev/null
@@ -1,274 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.json;
-
-/**
- * This provides static methods to convert comma delimited text into a
- * JSONArray, and to covert a JSONArray into comma delimited text. Comma
- * delimited text is a very popular format for data interchange. It is
- * understood by most database, spreadsheet, and organizer programs.
- * <p>
- * Each row of text represents a row in a table or a data record. Each row
- * ends with a NEWLINE character. Each row contains one or more values.
- * Values are separated by commas. A value can contain any character except
- * for comma, unless is is wrapped in single quotes or double quotes.
- * <p>
- * The first row usually contains the names of the columns.
- * <p>
- * A comma delimited list can be converted into a JSONArray of JSONObjects.
- * The names for the elements in the JSONObjects can be taken from the names
- * in the first row.
- * @author JSON.org
- * @version 2010-12-24
- */
-public class CDL {
-
- /**
- * Get the next value. The value can be wrapped in quotes. The value can
- * be empty.
- * @param x A JSONTokener of the source text.
- * @return The value string, or null if empty.
- * @throws JSONException if the quoted string is badly formed.
- */
- private static String getValue(JSONTokener x) throws JSONException {
- char c;
- char q;
- StringBuffer sb;
- do {
- c = x.next();
- } while (c == ' ' || c == '\t');
- switch (c) {
- case 0:
- return null;
- case '"':
- case '\'':
- q = c;
- sb = new StringBuffer();
- for (;;) {
- c = x.next();
- if (c == q) {
- break;
- }
- if (c == 0 || c == '\n' || c == '\r') {
- throw x.syntaxError("Missing close quote '" + q + "'.");
- }
- sb.append(c);
- }
- return sb.toString();
- case ',':
- x.back();
- return "";
- default:
- x.back();
- return x.nextTo(',');
- }
- }
-
- /**
- * Produce a JSONArray of strings from a row of comma delimited values.
- * @param x A JSONTokener of the source text.
- * @return A JSONArray of strings.
- * @throws JSONException
- */
- public static JSONArray rowToJSONArray(JSONTokener x) throws JSONException {
- JSONArray ja = new JSONArray();
- for (;;) {
- String value = getValue(x);
- char c = x.next();
- if (value == null ||
- (ja.length() == 0 && value.length() == 0 && c != ',')) {
- return null;
- }
- ja.put(value);
- for (;;) {
- if (c == ',') {
- break;
- }
- if (c != ' ') {
- if (c == '\n' || c == '\r' || c == 0) {
- return ja;
- }
- throw x.syntaxError("Bad character '" + c + "' (" +
- (int)c + ").");
- }
- c = x.next();
- }
- }
- }
-
- /**
- * Produce a JSONObject from a row of comma delimited text, using a
- * parallel JSONArray of strings to provides the names of the elements.
- * @param names A JSONArray of names. This is commonly obtained from the
- * first row of a comma delimited text file using the rowToJSONArray
- * method.
- * @param x A JSONTokener of the source text.
- * @return A JSONObject combining the names and values.
- * @throws JSONException
- */
- public static JSONObject rowToJSONObject(JSONArray names, JSONTokener x)
- throws JSONException {
- JSONArray ja = rowToJSONArray(x);
- return ja != null ? ja.toJSONObject(names) : null;
- }
-
- /**
- * Produce a comma delimited text row from a JSONArray. Values containing
- * the comma character will be quoted. Troublesome characters may be
- * removed.
- * @param ja A JSONArray of strings.
- * @return A string ending in NEWLINE.
- */
- public static String rowToString(JSONArray ja) {
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < ja.length(); i += 1) {
- if (i > 0) {
- sb.append(',');
- }
- Object object = ja.opt(i);
- if (object != null) {
- String string = object.toString();
- if (string.length() > 0 && (string.indexOf(',') >= 0 ||
- string.indexOf('\n') >= 0 || string.indexOf('\r') >= 0 ||
- string.indexOf(0) >= 0 || string.charAt(0) == '"')) {
- sb.append('"');
- int length = string.length();
- for (int j = 0; j < length; j += 1) {
- char c = string.charAt(j);
- if (c >= ' ' && c != '"') {
- sb.append(c);
- }
- }
- sb.append('"');
- } else {
- sb.append(string);
- }
- }
- }
- sb.append('\n');
- return sb.toString();
- }
-
- /**
- * Produce a JSONArray of JSONObjects from a comma delimited text string,
- * using the first row as a source of names.
- * @param string The comma delimited text.
- * @return A JSONArray of JSONObjects.
- * @throws JSONException
- */
- public static JSONArray toJSONArray(String string) throws JSONException {
- return toJSONArray(new JSONTokener(string));
- }
-
- /**
- * Produce a JSONArray of JSONObjects from a comma delimited text string,
- * using the first row as a source of names.
- * @param x The JSONTokener containing the comma delimited text.
- * @return A JSONArray of JSONObjects.
- * @throws JSONException
- */
- public static JSONArray toJSONArray(JSONTokener x) throws JSONException {
- return toJSONArray(rowToJSONArray(x), x);
- }
-
- /**
- * Produce a JSONArray of JSONObjects from a comma delimited text string
- * using a supplied JSONArray as the source of element names.
- * @param names A JSONArray of strings.
- * @param string The comma delimited text.
- * @return A JSONArray of JSONObjects.
- * @throws JSONException
- */
- public static JSONArray toJSONArray(JSONArray names, String string)
- throws JSONException {
- return toJSONArray(names, new JSONTokener(string));
- }
-
- /**
- * Produce a JSONArray of JSONObjects from a comma delimited text string
- * using a supplied JSONArray as the source of element names.
- * @param names A JSONArray of strings.
- * @param x A JSONTokener of the source text.
- * @return A JSONArray of JSONObjects.
- * @throws JSONException
- */
- public static JSONArray toJSONArray(JSONArray names, JSONTokener x)
- throws JSONException {
- if (names == null || names.length() == 0) {
- return null;
- }
- JSONArray ja = new JSONArray();
- for (;;) {
- JSONObject jo = rowToJSONObject(names, x);
- if (jo == null) {
- break;
- }
- ja.put(jo);
- }
- if (ja.length() == 0) {
- return null;
- }
- return ja;
- }
-
-
- /**
- * Produce a comma delimited text from a JSONArray of JSONObjects. The
- * first row will be a list of names obtained by inspecting the first
- * JSONObject.
- * @param ja A JSONArray of JSONObjects.
- * @return A comma delimited text.
- * @throws JSONException
- */
- public static String toString(JSONArray ja) throws JSONException {
- JSONObject jo = ja.optJSONObject(0);
- if (jo != null) {
- JSONArray names = jo.names();
- if (names != null) {
- return rowToString(names) + toString(names, ja);
- }
- }
- return null;
- }
-
- /**
- * Produce a comma delimited text from a JSONArray of JSONObjects using
- * a provided list of names. The list of names is not included in the
- * output.
- * @param names A JSONArray of strings.
- * @param ja A JSONArray of JSONObjects.
- * @return A comma delimited text.
- * @throws JSONException
- */
- public static String toString(JSONArray names, JSONArray ja)
- throws JSONException {
- if (names == null || names.length() == 0) {
- return null;
- }
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < ja.length(); i += 1) {
- JSONObject jo = ja.optJSONObject(i);
- if (jo != null) {
- sb.append(rowToString(jo.toJSONArray(names)));
- }
- }
- return sb.toString();
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/Cookie.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/Cookie.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/Cookie.java
deleted file mode 100644
index 8e208f0..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/Cookie.java
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.json;
-
-/**
- * Convert a web browser cookie specification to a JSONObject and back.
- * JSON and Cookies are both notations for name/value pairs.
- * @author JSON.org
- * @version 2010-12-24
- */
-public class Cookie {
-
- /**
- * Produce a copy of a string in which the characters '+', '%', '=', ';'
- * and control characters are replaced with "%hh". This is a gentle form
- * of URL encoding, attempting to cause as little distortion to the
- * string as possible. The characters '=' and ';' are meta characters in
- * cookies. By convention, they are escaped using the URL-encoding. This is
- * only a convention, not a standard. Often, cookies are expected to have
- * encoded values. We encode '=' and ';' because we must. We encode '%' and
- * '+' because they are meta characters in URL encoding.
- * @param string The source string.
- * @return The escaped result.
- */
- public static String escape(String string) {
- char c;
- String s = string.trim();
- StringBuffer sb = new StringBuffer();
- int length = s.length();
- for (int i = 0; i < length; i += 1) {
- c = s.charAt(i);
- if (c < ' ' || c == '+' || c == '%' || c == '=' || c == ';') {
- sb.append('%');
- sb.append(Character.forDigit((char)((c >>> 4) & 0x0f), 16));
- sb.append(Character.forDigit((char)(c & 0x0f), 16));
- } else {
- sb.append(c);
- }
- }
- return sb.toString();
- }
-
-
- /**
- * Convert a cookie specification string into a JSONObject. The string
- * will contain a name value pair separated by '='. The name and the value
- * will be unescaped, possibly converting '+' and '%' sequences. The
- * cookie properties may follow, separated by ';', also represented as
- * name=value (except the secure property, which does not have a value).
- * The name will be stored under the key "name", and the value will be
- * stored under the key "value". This method does not do checking or
- * validation of the parameters. It only converts the cookie string into
- * a JSONObject.
- * @param string The cookie specification string.
- * @return A JSONObject containing "name", "value", and possibly other
- * members.
- * @throws JSONException
- */
- public static JSONObject toJSONObject(String string) throws JSONException {
- String name;
- JSONObject jo = new JSONObject();
- Object value;
- JSONTokener x = new JSONTokener(string);
- jo.put("name", x.nextTo('='));
- x.next('=');
- jo.put("value", x.nextTo(';'));
- x.next();
- while (x.more()) {
- name = unescape(x.nextTo("=;"));
- if (x.next() != '=') {
- if (name.equals("secure")) {
- value = Boolean.TRUE;
- } else {
- throw x.syntaxError("Missing '=' in cookie parameter.");
- }
- } else {
- value = unescape(x.nextTo(';'));
- x.next();
- }
- jo.put(name, value);
- }
- return jo;
- }
-
-
- /**
- * Convert a JSONObject into a cookie specification string. The JSONObject
- * must contain "name" and "value" members.
- * If the JSONObject contains "expires", "domain", "path", or "secure"
- * members, they will be appended to the cookie specification string.
- * All other members are ignored.
- * @param jo A JSONObject
- * @return A cookie specification string
- * @throws JSONException
- */
- public static String toString(JSONObject jo) throws JSONException {
- StringBuffer sb = new StringBuffer();
-
- sb.append(escape(jo.getString("name")));
- sb.append("=");
- sb.append(escape(jo.getString("value")));
- if (jo.has("expires")) {
- sb.append(";expires=");
- sb.append(jo.getString("expires"));
- }
- if (jo.has("domain")) {
- sb.append(";domain=");
- sb.append(escape(jo.getString("domain")));
- }
- if (jo.has("path")) {
- sb.append(";path=");
- sb.append(escape(jo.getString("path")));
- }
- if (jo.optBoolean("secure")) {
- sb.append(";secure");
- }
- return sb.toString();
- }
-
- /**
- * Convert <code>%</code><i>hh</i> sequences to single characters, and
- * convert plus to space.
- * @param string A string that may contain
- * <code>+</code> <small>(plus)</small> and
- * <code>%</code><i>hh</i> sequences.
- * @return The unescaped string.
- */
- public static String unescape(String string) {
- int length = string.length();
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < length; ++i) {
- char c = string.charAt(i);
- if (c == '+') {
- c = ' ';
- } else if (c == '%' && i + 2 < length) {
- int d = JSONTokener.dehexchar(string.charAt(i + 1));
- int e = JSONTokener.dehexchar(string.charAt(i + 2));
- if (d >= 0 && e >= 0) {
- c = (char)(d * 16 + e);
- i += 2;
- }
- }
- sb.append(c);
- }
- return sb.toString();
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/CookieList.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/CookieList.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/CookieList.java
deleted file mode 100644
index e03f75c..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/CookieList.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.json;
-
-import java.util.Iterator;
-
-/**
- * Convert a web browser cookie list string to a JSONObject and back.
- * @author JSON.org
- * @version 2010-12-24
- */
-public class CookieList {
-
- /**
- * Convert a cookie list into a JSONObject. A cookie list is a sequence
- * of name/value pairs. The names are separated from the values by '='.
- * The pairs are separated by ';'. The names and the values
- * will be unescaped, possibly converting '+' and '%' sequences.
- *
- * To add a cookie to a cooklist,
- * cookielistJSONObject.put(cookieJSONObject.getString("name"),
- * cookieJSONObject.getString("value"));
- * @param string A cookie list string
- * @return A JSONObject
- * @throws JSONException
- */
- public static JSONObject toJSONObject(String string) throws JSONException {
- JSONObject jo = new JSONObject();
- JSONTokener x = new JSONTokener(string);
- while (x.more()) {
- String name = Cookie.unescape(x.nextTo('='));
- x.next('=');
- jo.put(name, Cookie.unescape(x.nextTo(';')));
- x.next();
- }
- return jo;
- }
-
-
- /**
- * Convert a JSONObject into a cookie list. A cookie list is a sequence
- * of name/value pairs. The names are separated from the values by '='.
- * The pairs are separated by ';'. The characters '%', '+', '=', and ';'
- * in the names and values are replaced by "%hh".
- * @param jo A JSONObject
- * @return A cookie list string
- * @throws JSONException
- */
- public static String toString(JSONObject jo) throws JSONException {
- boolean b = false;
- Iterator keys = jo.keys();
- String string;
- StringBuffer sb = new StringBuffer();
- while (keys.hasNext()) {
- string = keys.next().toString();
- if (!jo.isNull(string)) {
- if (b) {
- sb.append(';');
- }
- sb.append(Cookie.escape(string));
- sb.append("=");
- sb.append(Cookie.escape(jo.getString(string)));
- b = true;
- }
- }
- return sb.toString();
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/HTTP.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/HTTP.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/HTTP.java
deleted file mode 100644
index 19c7d53..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/HTTP.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.json;
-
-import java.util.Iterator;
-
-/**
- * Convert an HTTP header to a JSONObject and back.
- * @author JSON.org
- * @version 2010-12-24
- */
-public class HTTP {
-
- /** Carriage return/line feed. */
- public static final String CRLF = "\r\n";
-
- /**
- * Convert an HTTP header string into a JSONObject. It can be a request
- * header or a response header. A request header will contain
- * <pre>{
- * Method: "POST" (for example),
- * "Request-URI": "/" (for example),
- * "HTTP-Version": "HTTP/1.1" (for example)
- * }</pre>
- * A response header will contain
- * <pre>{
- * "HTTP-Version": "HTTP/1.1" (for example),
- * "Status-Code": "200" (for example),
- * "Reason-Phrase": "OK" (for example)
- * }</pre>
- * In addition, the other parameters in the header will be captured, using
- * the HTTP field names as JSON names, so that <pre>
- * Date: Sun, 26 May 2002 18:06:04 GMT
- * Cookie: Q=q2=PPEAsg--; B=677gi6ouf29bn&b=2&f=s
- * Cache-Control: no-cache</pre>
- * become
- * <pre>{...
- * Date: "Sun, 26 May 2002 18:06:04 GMT",
- * Cookie: "Q=q2=PPEAsg--; B=677gi6ouf29bn&b=2&f=s",
- * "Cache-Control": "no-cache",
- * ...}</pre>
- * It does no further checking or conversion. It does not parse dates.
- * It does not do '%' transforms on URLs.
- * @param string An HTTP header string.
- * @return A JSONObject containing the elements and attributes
- * of the XML string.
- * @throws JSONException
- */
- public static JSONObject toJSONObject(String string) throws JSONException {
- JSONObject jo = new JSONObject();
- HTTPTokener x = new HTTPTokener(string);
- String token;
-
- token = x.nextToken();
- if (token.toUpperCase().startsWith("HTTP")) {
-
-// Response
-
- jo.put("HTTP-Version", token);
- jo.put("Status-Code", x.nextToken());
- jo.put("Reason-Phrase", x.nextTo('\0'));
- x.next();
-
- } else {
-
-// Request
-
- jo.put("Method", token);
- jo.put("Request-URI", x.nextToken());
- jo.put("HTTP-Version", x.nextToken());
- }
-
-// Fields
-
- while (x.more()) {
- String name = x.nextTo(':');
- x.next(':');
- jo.put(name, x.nextTo('\0'));
- x.next();
- }
- return jo;
- }
-
-
- /**
- * Convert a JSONObject into an HTTP header. A request header must contain
- * <pre>{
- * Method: "POST" (for example),
- * "Request-URI": "/" (for example),
- * "HTTP-Version": "HTTP/1.1" (for example)
- * }</pre>
- * A response header must contain
- * <pre>{
- * "HTTP-Version": "HTTP/1.1" (for example),
- * "Status-Code": "200" (for example),
- * "Reason-Phrase": "OK" (for example)
- * }</pre>
- * Any other members of the JSONObject will be output as HTTP fields.
- * The result will end with two CRLF pairs.
- * @param jo A JSONObject
- * @return An HTTP header string.
- * @throws JSONException if the object does not contain enough
- * information.
- */
- public static String toString(JSONObject jo) throws JSONException {
- Iterator keys = jo.keys();
- String string;
- StringBuffer sb = new StringBuffer();
- if (jo.has("Status-Code") && jo.has("Reason-Phrase")) {
- sb.append(jo.getString("HTTP-Version"));
- sb.append(' ');
- sb.append(jo.getString("Status-Code"));
- sb.append(' ');
- sb.append(jo.getString("Reason-Phrase"));
- } else if (jo.has("Method") && jo.has("Request-URI")) {
- sb.append(jo.getString("Method"));
- sb.append(' ');
- sb.append('"');
- sb.append(jo.getString("Request-URI"));
- sb.append('"');
- sb.append(' ');
- sb.append(jo.getString("HTTP-Version"));
- } else {
- throw new JSONException("Not enough material for an HTTP header.");
- }
- sb.append(CRLF);
- while (keys.hasNext()) {
- string = keys.next().toString();
- if (!"HTTP-Version".equals(string) && !"Status-Code".equals(string) &&
- !"Reason-Phrase".equals(string) && !"Method".equals(string) &&
- !"Request-URI".equals(string) && !jo.isNull(string)) {
- sb.append(string);
- sb.append(": ");
- sb.append(jo.getString(string));
- sb.append(CRLF);
- }
- }
- sb.append(CRLF);
- return sb.toString();
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/eff7f216/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/HTTPTokener.java
----------------------------------------------------------------------
diff --git a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/HTTPTokener.java b/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/HTTPTokener.java
deleted file mode 100644
index 536aee0..0000000
--- a/geode-pulse/src/main/java/com/vmware/gemfire/tools/pulse/internal/json/HTTPTokener.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- *
- * 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 com.vmware.geode.tools.pulse.internal.json;
-
-/**
- * The HTTPTokener extends the JSONTokener to provide additional methods
- * for the parsing of HTTP headers.
- * @author JSON.org
- * @version 2010-12-24
- */
-public class HTTPTokener extends JSONTokener {
-
- /**
- * Construct an HTTPTokener from a string.
- * @param string A source string.
- */
- public HTTPTokener(String string) {
- super(string);
- }
-
-
- /**
- * Get the next token or string. This is used in parsing HTTP headers.
- * @throws JSONException
- * @return A String.
- */
- public String nextToken() throws JSONException {
- char c;
- char q;
- StringBuffer sb = new StringBuffer();
- do {
- c = next();
- } while (Character.isWhitespace(c));
- if (c == '"' || c == '\'') {
- q = c;
- for (;;) {
- c = next();
- if (c < ' ') {
- throw syntaxError("Unterminated string.");
- }
- if (c == q) {
- return sb.toString();
- }
- sb.append(c);
- }
- }
- for (;;) {
- if (c == 0 || Character.isWhitespace(c)) {
- return sb.toString();
- }
- sb.append(c);
- c = next();
- }
- }
-}