gfe, fxa, ufpy, msas cleanup
This commit is contained in:
parent
9b1402b3ad
commit
5b1667ba09
239 changed files with 3 additions and 23492 deletions
|
@ -1,9 +0,0 @@
|
|||
#!/bin/sh
|
||||
export DISPLAY=":0.0"
|
||||
export FXA_HOME=/awips2/cave/caveEnvironment
|
||||
export TMCP_HOME=/awips2/cave/caveEnvironment
|
||||
|
||||
$FXA_HOME/bin/MonitorTestMode >& /dev/null &
|
||||
|
||||
|
||||
|
|
@ -1,64 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# determine where the script is being ran from.
|
||||
path_to_script=`readlink -f $0`
|
||||
RUN_FROM_DIR=`dirname ${path_to_script}`
|
||||
BASE_ENV_DIR=`dirname ${RUN_FROM_DIR}`
|
||||
|
||||
#DR 18113 rehost. /awips2/fxa/... Has kicked the bit-bucket.
|
||||
export TMCP_HOME=/awips2/cave/caveEnvironment
|
||||
export FXA_HOME=/awips2/cave/caveEnvironment
|
||||
|
||||
if [ ! -n "${TMCP_HOME}" ]
|
||||
then
|
||||
echo -e "\e[1;31mTMCP_HOME is not set.\e[m"
|
||||
echo -e "\e[0;32mSetting TMCP_HOME to '${BASE_ENV_DIR}'.\e[m"
|
||||
export TMCP_HOME=${BASE_ENV_DIR}
|
||||
else
|
||||
echo "TMCP_HOME is '${TMCP_HOME}'"
|
||||
fi
|
||||
|
||||
if [ ! -n "${FXA_HOME}" ]
|
||||
then
|
||||
echo -e "\e[1;31mFXA_HOME is not set.\e[m"
|
||||
echo -e "\e[0;32mSetting FXA_HOME to '${BASE_ENV_DIR}'.\e[m"
|
||||
export FXA_HOME=${BASE_ENV_DIR}
|
||||
else
|
||||
echo "FXA_HOME is '${FXA_HOME}'"
|
||||
fi
|
||||
|
||||
# determine if 'FXA_WARNGEN_PRODUCT_ID' needs to be set
|
||||
HOST=`uname -n`
|
||||
TMP_HOST_NUMBER=`uname -n | awk '{print substr($1, 3, 1);}'`
|
||||
ALT_HOST_PART=`uname -n | awk '{print substr($1, 3, length($1) - 1);}'`
|
||||
ALT_HOST="xt"${ALT_HOST_PART}
|
||||
ping -c 1 -w 1 ${ALT_HOST} >/dev/null 2>/dev/null
|
||||
RC=`echo $?`
|
||||
|
||||
if [ "${RC}" = "0" ]
|
||||
then
|
||||
if [ ! -n "${FXA_WARNGEN_PRODUCT_ID}" ]
|
||||
then
|
||||
echo -e "\e[1;31mFXA_WARNGEN_PRODUCT_ID is not set.\e[m"
|
||||
echo -e "\e[0;32mSetting FXA_WARNGEN_PRODUCT_ID to '${TMP_HOST_NUMBER}'.\e[m"
|
||||
export FXA_WARNGEN_PRODUCT_ID=${TMP_HOST_NUMBER}
|
||||
else
|
||||
echo "FXA_WARNGEN_PRODUCT_ID is '${FXA_WARNGEN_PRODUCT_ID}'."
|
||||
fi
|
||||
else
|
||||
echo -e "\e[1;31mPartner host \""${ALT_HOST}"\" is unreachable by network!\e[m"
|
||||
echo ${ALT_HOME}
|
||||
echo
|
||||
fi
|
||||
|
||||
export LD_LIBRARY_PATH=$TMCP_HOME/lib:$LD_LIBRARY_PATH
|
||||
|
||||
# for TMCP logs
|
||||
if [ ! -d $HOME/caveData/tmcpLogs ]; then
|
||||
mkdir -p $HOME/caveData/tmcpLogs
|
||||
fi
|
||||
export LOG_DIR=$HOME/caveData/tmcpLogs
|
||||
|
||||
|
||||
$TMCP_HOME/bin/tmcp
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
#!/bin/sh
|
||||
export DISPLAY=:0.0
|
||||
export FXA_HOME=/awips2/cave/caveEnvironment
|
||||
if [ $6 = "kde" ]
|
||||
then
|
||||
kstart --alldesktops $FXA_HOME/bin/showBanner $2 $3 $4 $5 &
|
||||
else
|
||||
$FXA_HOME/bin/showBanner $2 $3 $4 $5 &
|
||||
fi
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>build.wes2bridge.utility</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -1,49 +0,0 @@
|
|||
<project basedir=".">
|
||||
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
|
||||
|
||||
<!-- The directory that the jar file will be placed in when it is finished. -->
|
||||
<property name="destination.directory" value="" />
|
||||
<!-- The location of uframe-eclipse. -->
|
||||
<property name="eclipse.directory" value="" />
|
||||
<!-- The location of the awips2 baseline. -->
|
||||
<property name="baseline.dir" value="" />
|
||||
|
||||
<!-- Verify the destination directory has been provided. -->
|
||||
<if>
|
||||
<equals arg1="${destination.directory}" arg2="" />
|
||||
<then>
|
||||
<fail message="Error: a destination directory has not been specified." />
|
||||
</then>
|
||||
</if>
|
||||
<!-- Verify the an eclipse directory has been provided. -->
|
||||
<if>
|
||||
<equals arg1="${eclipse.directory}" arg2="" />
|
||||
<then>
|
||||
<fail message="Error: an eclipse directory has not been specified." />
|
||||
</then>
|
||||
</if>
|
||||
<!-- Verify the awips2 baseline directory has been provided. -->
|
||||
<if>
|
||||
<equals arg1="${baseline.dir}" arg2="" />
|
||||
<then>
|
||||
<fail message="Error: a awips2 baseline directory has not been specified." />
|
||||
</then>
|
||||
</if>
|
||||
|
||||
<target name="extract_eclipse_jar_in_jar">
|
||||
<mkdir dir="${baseline.dir}/${project.name}/lib" />
|
||||
<unzip
|
||||
dest="${baseline.dir}/${project.name}/lib"
|
||||
overwrite="true">
|
||||
|
||||
<fileset dir="${eclipse.directory}/plugins">
|
||||
<include name="org.eclipse.jdt.ui_*.jar" />
|
||||
</fileset>
|
||||
|
||||
<patternset>
|
||||
<include name="jar-in-jar-loader.zip" />
|
||||
</patternset>
|
||||
|
||||
</unzip>
|
||||
</target>
|
||||
</project>
|
|
@ -1,28 +0,0 @@
|
|||
# Wes2Bridge Utility pde build properties.
|
||||
|
||||
product=/com.raytheon.wes2bridge.utility.product/wes2bridge.utility.product
|
||||
|
||||
topLevelElementType=feature
|
||||
buildType=I
|
||||
buildId=Wes2Bridge
|
||||
buildLabel=${buildType}.${buildId}
|
||||
timestamp=007
|
||||
archivePrefix=wes2bridge
|
||||
archivesFormat=linux, gtk, x86 - folder
|
||||
collectingFolder=${archivePrefix}
|
||||
|
||||
runPackager=false
|
||||
skipBase=true
|
||||
skipFetch=true
|
||||
skipMaps=true
|
||||
baseos=linux
|
||||
basews=gtk
|
||||
basearch=x86
|
||||
|
||||
logExtension=.log
|
||||
javacDebugInfo=false
|
||||
javacFailOnError=true
|
||||
javacVerbose=true
|
||||
javacSource=1.8
|
||||
javacTarget=1.8
|
||||
compilerArg=-g:lines,source
|
|
@ -1,195 +0,0 @@
|
|||
<project name="Build specific targets and properties" default="noDefault">
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Run a given ${target} on all elements being built -->
|
||||
<!-- Add on <ant> task for each top level element being built. -->
|
||||
<!-- ===================================================================== -->
|
||||
<property name="allElementsFile" value="${builder}/allElements.xml"/>
|
||||
<import file="${allElementsFile}" />
|
||||
<target name="allElements">
|
||||
<antcall target="allElementsDelegator" />
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="getBaseComponents" depends="checkLocalBase" unless="skipBase">
|
||||
<get src="${eclipseBaseURL}" dest="${buildDirectory}/../temp-base.zip" />
|
||||
<unzip dest="${base}" overwrite="true" src="${buildDirectory}/../temp-base.zip" />
|
||||
</target>
|
||||
|
||||
<target name="checkLocalBase">
|
||||
<available file="${base}" property="skipBase" />
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Check out map files from correct repository -->
|
||||
<!-- Replace values for mapsCheckoutTag as desired. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="getMapFiles" depends="checkLocalMaps" unless="skipMaps">
|
||||
|
||||
</target>
|
||||
|
||||
<target name="checkLocalMaps">
|
||||
|
||||
</target>
|
||||
|
||||
<target name="tagMapFiles" if="tagMaps">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
|
||||
<target name="clean" unless="noclean">
|
||||
<antcall target="allElements">
|
||||
<param name="target" value="cleanElement" />
|
||||
</antcall>
|
||||
</target>
|
||||
|
||||
<target name="gatherLogs">
|
||||
<mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
|
||||
<antcall target="allElements">
|
||||
<param name="target" value="gatherLogs" />
|
||||
</antcall>
|
||||
<unzip dest="${buildDirectory}/${buildLabel}/compilelogs" overwrite="true">
|
||||
<fileset dir="${buildDirectory}/features">
|
||||
<include name="**/*.log.zip" />
|
||||
</fileset>
|
||||
</unzip>
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do before setup -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="preSetup">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do after setup but before starting the build proper -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="postSetup">
|
||||
<echo message="${buildDirectory}"/>
|
||||
<mkdir dir="${buildDirectory}/plugins"/>
|
||||
<echo message="com.*/**"/>
|
||||
<copy todir="${buildDirectory}/plugins">
|
||||
<fileset dir="${buildDirectory}/../../../" includes="com.*/**"/>
|
||||
</copy>
|
||||
<echo message="org.*/**"/>
|
||||
<copy todir="${buildDirectory}/plugins">
|
||||
<fileset dir="${buildDirectory}/../../../" includes="org.*/**"/>
|
||||
</copy>
|
||||
<echo message="ch.*/**"/>
|
||||
<copy todir="${buildDirectory}/plugins">
|
||||
<fileset dir="${buildDirectory}/../../../" includes="ch.*/**"/>
|
||||
</copy>
|
||||
<echo message="javax.*/**"/>
|
||||
<copy todir="${buildDirectory}/plugins">
|
||||
<fileset dir="${buildDirectory}/../../../" includes="javax.*/**"/>
|
||||
</copy>
|
||||
<echo message="features.*/**"/>
|
||||
<copy todir="${buildDirectory}/features">
|
||||
<fileset dir="${buildDirectory}/../../../" includes="*.feature*/**"/>
|
||||
</copy>
|
||||
|
||||
<antcall target="getBaseComponents" />
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do before fetching the build elements -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="preFetch">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do after fetching the build elements -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="postFetch">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do before generating the build scripts. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="preGenerate">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do after generating the build scripts. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="postGenerate">
|
||||
<antcall target="clean" />
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do before running the build.xmls for the elements being built. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="preProcess">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do after running the build.xmls for the elements being built. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="postProcess">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do before running assemble. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="preAssemble">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do after running assemble. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="postAssemble">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do before running package. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="prePackage">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do after running package. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="postPackage">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do after the build is done. -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="postBuild">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do to test the build results -->
|
||||
<!-- ===================================================================== -->
|
||||
|
||||
<target name="test">
|
||||
|
||||
<ant antfile="${builder}/test.xml" />
|
||||
|
||||
</target>
|
||||
|
||||
|
||||
|
||||
<target name="checkJUnitTestResults">
|
||||
|
||||
<taskdef name="checkJUnitReports" classname="sample.tools.TestResultCheck" classpath="${builder}/bin;${builder}/extraTools/sampletools.jar" />
|
||||
|
||||
<checkJUnitReports dir="${buildDirectory}/${buildLabel}/testresults" output="${buildDirectory}/junitresults.txt" />
|
||||
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Steps to do to publish the build results -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="publish">
|
||||
</target>
|
||||
|
||||
<!-- ===================================================================== -->
|
||||
<!-- Default target -->
|
||||
<!-- ===================================================================== -->
|
||||
<target name="noDefault">
|
||||
<echo message="You must specify a target when invoking this file" />
|
||||
</target>
|
||||
|
||||
</project>
|
|
@ -1,7 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
|
||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
|
@ -1,28 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>com.raytheon.wes2bridge.common</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.pde.PluginNature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -1,8 +0,0 @@
|
|||
#Thu Jan 12 13:45:52 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
|
||||
org.eclipse.jdt.core.compiler.compliance=1.6
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.source=1.6
|
|
@ -1,9 +0,0 @@
|
|||
Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: Wes2Bridge Utility Common
|
||||
Bundle-SymbolicName: com.raytheon.wes2bridge.common
|
||||
Bundle-Version: 1.0.0.qualifier
|
||||
Bundle-Vendor: RAYTHEON
|
||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
||||
Export-Package: com.raytheon.wes2bridge.common.configuration,
|
||||
com.raytheon.wes2bridge.configuration.jaxb
|
|
@ -1,4 +0,0 @@
|
|||
source.. = src/
|
||||
output.. = bin/
|
||||
bin.includes = META-INF/,\
|
||||
.
|
|
@ -1,27 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<project default="create_jar" name="Create com.raytheon.wes2bridge.common.jar.">
|
||||
|
||||
<import file="${basedir}/../build.wes2bridge.utility/ant/setup.xml" />
|
||||
|
||||
<property name="project.name" value="com.raytheon.wes2bridge.common" />
|
||||
|
||||
<target name="compile">
|
||||
<mkdir dir="${baseline.dir}/${project.name}/bin" />
|
||||
<javac destdir="${baseline.dir}/${project.name}/bin"
|
||||
srcdir="${baseline.dir}/${project.name}/src"
|
||||
executable="/awips2/java/bin/javac" fork="true"
|
||||
includeantruntime="false">
|
||||
|
||||
<include name="**/*.java" />
|
||||
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
<target name="create_jar" depends="compile">
|
||||
<jar destfile="${destination.directory}/${project.name}.jar"
|
||||
manifest="${baseline.dir}/${project.name}/META-INF/MANIFEST.MF">
|
||||
|
||||
<fileset dir="${baseline.dir}/${project.name}/bin" />
|
||||
</jar>
|
||||
</target>
|
||||
</project>
|
|
@ -1,198 +0,0 @@
|
|||
/**
|
||||
* This software was developed and / or modified by Raytheon Company,
|
||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
*
|
||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
* This software product contains export-restricted data whose
|
||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
* to non-U.S. persons whether in the United States or abroad requires
|
||||
* an export license or other authorization.
|
||||
*
|
||||
* Contractor Name: Raytheon Company
|
||||
* Contractor Address: 6825 Pine Street, Suite 340
|
||||
* Mail Stop B8
|
||||
* Omaha, NE 68106
|
||||
* 402.291.0100
|
||||
*
|
||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
* further licensing information.
|
||||
**/
|
||||
package com.raytheon.wes2bridge.common.configuration;
|
||||
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
|
||||
/**
|
||||
* Represents a Wes2Bridge test case that will be used to configure a new edex
|
||||
* environment.
|
||||
*
|
||||
* <pre>
|
||||
*
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* Date Ticket# Engineer Description
|
||||
* ------------ ---------- ----------- --------------------------
|
||||
* Aug 12, 2014 3521 bkowal Initial creation
|
||||
* Apr 20, 2015 4392 dlovely Removed un-used JMX port configuration
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
* @author bkowal
|
||||
* @version 1.0
|
||||
*/
|
||||
|
||||
@XmlRootElement(name = "Wes2BridgeCase")
|
||||
@XmlAccessorType(XmlAccessType.NONE)
|
||||
public class Wes2BridgeCase {
|
||||
@XmlElement
|
||||
private String name;
|
||||
|
||||
@XmlElement
|
||||
private String dataArchiveRoot;
|
||||
|
||||
@XmlElement
|
||||
private int databasePort;
|
||||
|
||||
@XmlElement
|
||||
private int edexHttpPort;
|
||||
|
||||
@XmlElement
|
||||
private int qpidHttpPort;
|
||||
|
||||
@XmlElement
|
||||
private int jmsPort;
|
||||
|
||||
@XmlElement
|
||||
private int httpdPypiesPort;
|
||||
|
||||
@XmlElement
|
||||
private int pypiesLoggingPort;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public Wes2BridgeCase() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the name
|
||||
*/
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param name
|
||||
* the name to set
|
||||
*/
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the dataArchiveRoot
|
||||
*/
|
||||
public String getDataArchiveRoot() {
|
||||
return dataArchiveRoot;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param dataArchiveRoot
|
||||
* the dataArchiveRoot to set
|
||||
*/
|
||||
public void setDataArchiveRoot(String dataArchiveRoot) {
|
||||
this.dataArchiveRoot = dataArchiveRoot;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the databasePort
|
||||
*/
|
||||
public int getDatabasePort() {
|
||||
return databasePort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param databasePort
|
||||
* the databasePort to set
|
||||
*/
|
||||
public void setDatabasePort(int databasePort) {
|
||||
this.databasePort = databasePort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the edexHttpPort
|
||||
*/
|
||||
public int getEdexHttpPort() {
|
||||
return edexHttpPort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param edexHttpPort
|
||||
* the edexHttpPort to set
|
||||
*/
|
||||
public void setEdexHttpPort(int edexHttpPort) {
|
||||
this.edexHttpPort = edexHttpPort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the qpidHttpPort
|
||||
*/
|
||||
public int getQpidHttpPort() {
|
||||
return qpidHttpPort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param qpidHttpPort
|
||||
* the qpidHttpPort to set
|
||||
*/
|
||||
public void setQpidHttpPort(int qpidHttpPort) {
|
||||
this.qpidHttpPort = qpidHttpPort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the jmsPort
|
||||
*/
|
||||
public int getJmsPort() {
|
||||
return jmsPort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param jmsPort
|
||||
* the jmsPort to set
|
||||
*/
|
||||
public void setJmsPort(int jmsPort) {
|
||||
this.jmsPort = jmsPort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the httpdPypiesPort
|
||||
*/
|
||||
public int getHttpdPypiesPort() {
|
||||
return httpdPypiesPort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param httpdPypiesPort
|
||||
* the httpdPypiesPort to set
|
||||
*/
|
||||
public void setHttpdPypiesPort(int httpdPypiesPort) {
|
||||
this.httpdPypiesPort = httpdPypiesPort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the pypiesLoggingPort
|
||||
*/
|
||||
public int getPypiesLoggingPort() {
|
||||
return pypiesLoggingPort;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param pypiesLoggingPort
|
||||
* the pypiesLoggingPort to set
|
||||
*/
|
||||
public void setPypiesLoggingPort(int pypiesLoggingPort) {
|
||||
this.pypiesLoggingPort = pypiesLoggingPort;
|
||||
}
|
||||
}
|
|
@ -1,58 +0,0 @@
|
|||
/**
|
||||
* This software was developed and / or modified by Raytheon Company,
|
||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
*
|
||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
* This software product contains export-restricted data whose
|
||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
* to non-U.S. persons whether in the United States or abroad requires
|
||||
* an export license or other authorization.
|
||||
*
|
||||
* Contractor Name: Raytheon Company
|
||||
* Contractor Address: 6825 Pine Street, Suite 340
|
||||
* Mail Stop B8
|
||||
* Omaha, NE 68106
|
||||
* 402.291.0100
|
||||
*
|
||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
* further licensing information.
|
||||
**/
|
||||
package com.raytheon.wes2bridge.configuration.jaxb;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
import javax.xml.bind.JAXBContext;
|
||||
import javax.xml.bind.JAXBException;
|
||||
|
||||
import com.raytheon.wes2bridge.common.configuration.Wes2BridgeCase;
|
||||
|
||||
/**
|
||||
* Uses jaxb to convert Wes2Bridge configuration in XML format to a Java POJO.
|
||||
*
|
||||
* <pre>
|
||||
* Date Ticket# Engineer Description
|
||||
* ------------ ---------- ----------- --------------------------
|
||||
* Aug 12, 2014 3521 bkowal Initial creation
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
* @author bkowal
|
||||
* @version 1.0
|
||||
*/
|
||||
|
||||
public class Wes2BridgeJaxbManager {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
protected Wes2BridgeJaxbManager() {
|
||||
}
|
||||
|
||||
public static Wes2BridgeCase toWes2BridgeCase(File wes2bridgeXMLFile)
|
||||
throws JAXBException {
|
||||
JAXBContext jaxbContext = JAXBContext.newInstance(Wes2BridgeCase.class);
|
||||
|
||||
return (Wes2BridgeCase) jaxbContext.createUnmarshaller().unmarshal(
|
||||
wes2bridgeXMLFile);
|
||||
}
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
|
||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
|
@ -1,28 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>com.raytheon.wes2bridge.configuration</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.pde.PluginNature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -1,8 +0,0 @@
|
|||
#Thu Jan 12 14:09:44 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
|
||||
org.eclipse.jdt.core.compiler.compliance=1.6
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.source=1.6
|
|
@ -1,8 +0,0 @@
|
|||
Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: Wes2Bridge Configuration Utility
|
||||
Bundle-SymbolicName: com.raytheon.wes2bridge.configuration
|
||||
Bundle-Version: 1.0.0.qualifier
|
||||
Bundle-Vendor: RAYTHEON
|
||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
||||
Require-Bundle: com.raytheon.wes2bridge.common;bundle-version="1.0.0"
|
|
@ -1,4 +0,0 @@
|
|||
source.. = src/
|
||||
output.. = bin/
|
||||
bin.includes = META-INF/,\
|
||||
.
|
|
@ -1,42 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<project default="create_run_jar"
|
||||
name="Create Runnable Jar for Project com.raytheon.wes2bridge.configuration with Jar-in-Jar Loader"
|
||||
basedir=".">
|
||||
|
||||
<import file="${basedir}/../build.wes2bridge.utility/ant/setup.xml" />
|
||||
|
||||
<property name="project.name" value="com.raytheon.wes2bridge.configuration" />
|
||||
|
||||
<path id="WES2BRIDGE.classpath">
|
||||
<pathelement path="${destination.directory}/com.raytheon.wes2bridge.common.jar" />
|
||||
</path>
|
||||
|
||||
<target name="compile">
|
||||
<mkdir dir="${baseline.dir}/${project.name}/bin" />
|
||||
<javac destdir="${baseline.dir}/${project.name}/bin"
|
||||
srcdir="${baseline.dir}/${project.name}/src"
|
||||
executable="/awips2/java/bin/javac" fork="true"
|
||||
includeantruntime="false"
|
||||
classpathref="WES2BRIDGE.classpath">
|
||||
|
||||
<include name="**/*.java" />
|
||||
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
<target name="create_run_jar" depends="compile">
|
||||
<antcall target="extract_eclipse_jar_in_jar" />
|
||||
|
||||
<jar destfile="${destination.directory}/ConfigurationUtility.jar">
|
||||
<manifest>
|
||||
<attribute name="Main-Class" value="org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader"/>
|
||||
<attribute name="Rsrc-Main-Class" value="com.raytheon.wes2bridge.configuration.ConfigurationUtility"/>
|
||||
<attribute name="Class-Path" value="."/>
|
||||
<attribute name="Rsrc-Class-Path" value="./ com.raytheon.wes2bridge.common.jar"/>
|
||||
</manifest>
|
||||
<zipfileset src="${baseline.dir}/${project.name}/lib/jar-in-jar-loader.zip"/>
|
||||
<zipfileset dir="${destination.directory}" includes="com.raytheon.wes2bridge.common.jar"/>
|
||||
<fileset dir="${baseline.dir}/${project.name}/bin"/>
|
||||
</jar>
|
||||
</target>
|
||||
</project>
|
|
@ -1,77 +0,0 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
package com.raytheon.wes2bridge.configuration;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
import javax.xml.bind.JAXBException;
|
||||
|
||||
import com.raytheon.wes2bridge.common.configuration.Wes2BridgeCase;
|
||||
import com.raytheon.wes2bridge.configuration.jaxb.Wes2BridgeJaxbManager;
|
||||
|
||||
/**
|
||||
* A command line utility that can be used to retrieve individual values from configuration.
|
||||
*
|
||||
* <pre>
|
||||
*
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* Date Ticket# Engineer Description
|
||||
* ------------ ---------- ----------- --------------------------
|
||||
* ? ? bkowal Initial Creation.
|
||||
* Aug 14, 2014 3521 bkowal Updated to use Wes2BridgeCase.
|
||||
*
|
||||
* </pre>
|
||||
*
|
||||
* @author bkowal
|
||||
* @version 1.0
|
||||
*/
|
||||
public class ConfigurationUtility {
|
||||
private static final String FIELD_NAME = "-name";
|
||||
|
||||
private static final String FIELD_ARCHIVE = "-archiveRoot";
|
||||
|
||||
private static final String FIELD_DBPORT = "-databasePort";
|
||||
|
||||
private static final String FIELD_HTTPPORT = "-httpPort";
|
||||
|
||||
private static final String FIELD_JMSPORT = "-jmsPort";
|
||||
|
||||
/**
|
||||
* @param args
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
if (args.length != 2) {
|
||||
System.out
|
||||
.println("Error: both a configuration file and a field must be specified.");
|
||||
System.exit(-1);
|
||||
}
|
||||
|
||||
Wes2BridgeCase wes2BridgeCase = null;
|
||||
try {
|
||||
wes2BridgeCase = Wes2BridgeJaxbManager.toWes2BridgeCase(new File(
|
||||
args[0]));
|
||||
} catch (JAXBException e) {
|
||||
e.printStackTrace();
|
||||
System.out
|
||||
.println("FAILED TO READ THE SPECIFIED CONFIGURATION FILE: "
|
||||
+ args[0] + "!");
|
||||
System.exit(-1);
|
||||
}
|
||||
|
||||
final String field = args[1];
|
||||
if (field.equals(FIELD_NAME)) {
|
||||
System.out.print(wes2BridgeCase.getName());
|
||||
} else if (field.equals(FIELD_ARCHIVE)) {
|
||||
System.out.print(wes2BridgeCase.getDataArchiveRoot());
|
||||
} else if (field.equals(FIELD_DBPORT)) {
|
||||
System.out.print(wes2BridgeCase.getDatabasePort());
|
||||
} else if (field.equals(FIELD_HTTPPORT)) {
|
||||
System.out.print(wes2BridgeCase.getEdexHttpPort());
|
||||
} else if (field.equals(FIELD_JMSPORT)) {
|
||||
System.out.print(wes2BridgeCase.getJmsPort());
|
||||
}
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
log4j.rootLogger=ERROR, CA
|
||||
|
||||
log4j.appender.CA=org.apache.log4j.ConsoleAppender
|
||||
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
|
||||
|
||||
log4j.appender.CA.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
|
|
@ -1,7 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
|
||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
|
@ -1,28 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>com.raytheon.wes2bridge.datalink</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.pde.PluginNature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -1,8 +0,0 @@
|
|||
#Thu Jan 12 13:58:47 CST 2012
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
|
||||
org.eclipse.jdt.core.compiler.compliance=1.6
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.source=1.6
|
|
@ -1,7 +0,0 @@
|
|||
Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: Wes2Bridge Datalink Utility
|
||||
Bundle-SymbolicName: com.raytheon.wes2bridge.datalink
|
||||
Bundle-Version: 1.0.0.qualifier
|
||||
Bundle-Vendor: RAYTHEON
|
||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
|
@ -1,4 +0,0 @@
|
|||
source.. = src/
|
||||
output.. = bin/
|
||||
bin.includes = META-INF/,\
|
||||
.
|
|
@ -1,36 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<project default="create_run_jar"
|
||||
name="Create Runnable Jar for Project com.raytheon.wes2bridge.datalink with Jar-in-Jar Loader"
|
||||
basedir=".">
|
||||
|
||||
<import file="${basedir}/../build.wes2bridge.utility/ant/setup.xml" />
|
||||
|
||||
<property name="project.name" value="com.raytheon.wes2bridge.datalink" />
|
||||
|
||||
<target name="compile">
|
||||
<mkdir dir="${baseline.dir}/${project.name}/bin" />
|
||||
<javac destdir="${baseline.dir}/${project.name}/bin"
|
||||
srcdir="${baseline.dir}/${project.name}/src"
|
||||
executable="/awips2/java/bin/javac" fork="true"
|
||||
includeantruntime="false">
|
||||
|
||||
<include name="**/*.java" />
|
||||
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
<target name="create_run_jar" depends="compile">
|
||||
<antcall target="extract_eclipse_jar_in_jar" />
|
||||
|
||||
<jar destfile="${destination.directory}/DataLinkUtility.jar">
|
||||
<manifest>
|
||||
<attribute name="Main-Class" value="org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader"/>
|
||||
<attribute name="Rsrc-Main-Class" value="com.raytheon.wes2bridge.datalink.DataLinkUtility"/>
|
||||
<attribute name="Class-Path" value="."/>
|
||||
<attribute name="Rsrc-Class-Path" value="./"/>
|
||||
</manifest>
|
||||
<zipfileset src="${baseline.dir}/${project.name}/lib/jar-in-jar-loader.zip"/>
|
||||
<fileset dir="${baseline.dir}/${project.name}/bin"/>
|
||||
</jar>
|
||||
</target>
|
||||
</project>
|
|
@ -1,34 +0,0 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
package com.raytheon.wes2bridge.datalink;
|
||||
|
||||
/**
|
||||
* @author bkowal
|
||||
*
|
||||
* This is an extremely simple utility. This program
|
||||
* expects on argument: a postgresql database directory.
|
||||
* This utility will then extract the "/awips2/database/data" and
|
||||
* return only the name of the database directory.
|
||||
*/
|
||||
public class DataLinkUtility
|
||||
{
|
||||
private static final String AWIPSII_DATA = "/awips2/database/data/";
|
||||
|
||||
/**
|
||||
* @param args
|
||||
*/
|
||||
public static void main(String[] args)
|
||||
{
|
||||
if (args.length != 1)
|
||||
{
|
||||
System.out.print("Error: The name of the data directory must be specified.");
|
||||
System.exit(-1);
|
||||
}
|
||||
|
||||
String dataDirectory = args[0];
|
||||
System.out.print(dataDirectory.replace(AWIPSII_DATA, ""));
|
||||
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
|
||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
|
@ -1,28 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>com.raytheon.wes2bridge.manager</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.pde.PluginNature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -1,10 +0,0 @@
|
|||
Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: Wes2Bridge Manager
|
||||
Bundle-SymbolicName: com.raytheon.wes2bridge.manager
|
||||
Bundle-Version: 1.16.0.qualifier
|
||||
Bundle-Vendor: RAYTHEON
|
||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
||||
Require-Bundle: com.raytheon.wes2bridge.common;bundle-version="1.0.0",
|
||||
org.apache.commons.lang3,
|
||||
com.fasterxml.jackson;bundle-version="2.6.5"
|
|
@ -1,4 +0,0 @@
|
|||
source.. = src/
|
||||
output.. = bin/
|
||||
bin.includes = META-INF/,\
|
||||
.
|
|
@ -1,62 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<project default="create_run_jar"
|
||||
name="Create Runnable Jar for Project com.raytheon.wes2bridge.manager with Jar-in-Jar Loader"
|
||||
basedir=".">
|
||||
|
||||
<import file="${basedir}/../build.wes2bridge.utility/ant/setup.xml" />
|
||||
|
||||
<property name="project.name" value="com.raytheon.wes2bridge.manager" />
|
||||
|
||||
<path id="WES2BRIDGE.classpath">
|
||||
<pathelement path="${destination.directory}/com.raytheon.wes2bridge.common.jar" />
|
||||
<fileset dir="${baseline.dir}/com.fasterxml.jackson">
|
||||
<include name="**/*.jar" />
|
||||
<exclude name="**/*sources.jar" />
|
||||
</fileset>
|
||||
<fileset dir="${baseline.dir}/org.apache.commons.lang3">
|
||||
<include name="**/*.jar" />
|
||||
</fileset>
|
||||
</path>
|
||||
|
||||
<pathconvert property="manifest.classpath" pathsep=" ">
|
||||
<path refid="WES2BRIDGE.classpath"/>
|
||||
<mapper>
|
||||
<chainedmapper>
|
||||
<flattenmapper/>
|
||||
</chainedmapper>
|
||||
</mapper>
|
||||
</pathconvert>
|
||||
|
||||
<target name="compile">
|
||||
<mkdir dir="${baseline.dir}/${project.name}/bin" />
|
||||
<javac destdir="${baseline.dir}/${project.name}/bin"
|
||||
srcdir="${baseline.dir}/${project.name}/src"
|
||||
executable="/awips2/java/bin/javac" fork="true"
|
||||
includeantruntime="false"
|
||||
classpathref="WES2BRIDGE.classpath">
|
||||
|
||||
<include name="**/*.java" />
|
||||
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
<target name="create_run_jar" depends="compile">
|
||||
<antcall target="extract_eclipse_jar_in_jar" />
|
||||
|
||||
<jar destfile="${destination.directory}/Wes2BridgeManager.jar">
|
||||
<manifest>
|
||||
<attribute name="Main-Class" value="org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader"/>
|
||||
<attribute name="Rsrc-Main-Class" value="com.raytheon.wes2bridge.manager.Wes2BridgeManager"/>
|
||||
<attribute name="Class-Path" value="."/>
|
||||
<attribute name="Rsrc-Class-Path" value="./ ${manifest.classpath}"/>
|
||||
</manifest>
|
||||
<zipfileset src="${baseline.dir}/${project.name}/lib/jar-in-jar-loader.zip"/>
|
||||
<zipfileset dir="${destination.directory}" includes="com.raytheon.wes2bridge.common.jar"/>
|
||||
<zipfileset dir="${baseline.dir}/com.fasterxml.jackson" includes="*.jar"
|
||||
excludes="*sources.jar" />
|
||||
<zipfileset dir="${baseline.dir}/org.apache.commons.lang3" includes="*.jar"
|
||||
excludes="*sources.jar" />
|
||||
<fileset dir="${baseline.dir}/${project.name}/bin"/>
|
||||
</jar>
|
||||
</target>
|
||||
</project>
|
|
@ -1,685 +0,0 @@
|
|||
/**
|
||||
* This software was developed and / or modified by Raytheon Company,
|
||||
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
*
|
||||
* U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
* This software product contains export-restricted data whose
|
||||
* export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
* to non-U.S. persons whether in the United States or abroad requires
|
||||
* an export license or other authorization.
|
||||
*
|
||||
* Contractor Name: Raytheon Company
|
||||
* Contractor Address: 6825 Pine Street, Suite 340
|
||||
* Mail Stop B8
|
||||
* Omaha, NE 68106
|
||||
* 402.291.0100
|
||||
*
|
||||
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
* further licensing information.
|
||||
**/
|
||||
package com.raytheon.wes2bridge.manager;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileReader;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.FileWriter;
|
||||
import java.io.BufferedWriter;
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.Charset;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.regex.Pattern;
|
||||
import java.util.regex.Matcher;
|
||||
|
||||
import javax.xml.bind.JAXBException;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.raytheon.wes2bridge.common.configuration.Wes2BridgeCase;
|
||||
import com.raytheon.wes2bridge.configuration.jaxb.Wes2BridgeJaxbManager;
|
||||
|
||||
/**
|
||||
* This java-based utility is used to update a wes2bridge environment. This
|
||||
* utility is invoked by the wes2bridge management script (bash) after the
|
||||
* management script spawns a new edex, database, qpid, pypies. Only "base"
|
||||
* files are updated based on the configuration file. The new wes2bridge
|
||||
* environment will still need to be localized.
|
||||
*
|
||||
* <pre>
|
||||
*
|
||||
* SOFTWARE HISTORY
|
||||
*
|
||||
* Date Ticket# Engineer Description
|
||||
* ------------ ---------- ----------- --------------------------
|
||||
* Jan 18, 2012 1490 bkowal Pypies is now added to each
|
||||
* edex-environment instance
|
||||
* Apr 18, 2013 1899 bkowal Updates qpid 0.18 configuration now.
|
||||
* July 2, 2013 2133 bkowal Updates for yajsw-wrapped qpid
|
||||
* Dec 11, 2013 2182 bkowal Update the postgresql port in
|
||||
* postgresql.conf instead of the
|
||||
* postgresql startup scripts
|
||||
* Aug 14, 2014 3521 bkowal Updated to use Wes2BridgeCase. Eliminated
|
||||
* configuration that is no longer used and
|
||||
* updated EDEX re-configuration.
|
||||
* Apr 15, 2015 4392 dlovely Updates the new qpid json configuration now
|
||||
* Apr 20, 2015 4392 dlovely Removed un-used JMX port configuration
|
||||
* Nov 12, 2015 5121 bkowal Write Java, Python, and PSQL locations to
|
||||
* setup.env to override the default locations.
|
||||
* Mar 07, 2016 5067 bkowal Update to use fasterxml jackson.
|
||||
* Jul 06, 2016 5734 bkowal Update edex_camel pid lookup match text.
|
||||
* </pre>
|
||||
*
|
||||
* @author bkowal
|
||||
* @version 1.0
|
||||
*/
|
||||
public class Wes2BridgeManager {
|
||||
private static final String AWIPSII = "/awips2";
|
||||
|
||||
private static final String AWIPSII_WES2BRIDGE_SCRIPTS = AWIPSII
|
||||
+ "/edex-environment/scripts";
|
||||
|
||||
private static final String WES2BRIDGE_DIRECTORY = "/usr/local/edex-environment";
|
||||
|
||||
private static final int GROUP_INDEX_ONE = 1;
|
||||
|
||||
private static final int GROUP_INDEX_TWO = 2;
|
||||
|
||||
private static final int EXIT_FAILURE = -1;
|
||||
|
||||
private static final int EXIT_SUCCESS = 0;
|
||||
|
||||
private static final String DEFAULT_HDF5_DIRECTORY = "/edex/data/hdf5";
|
||||
|
||||
private Wes2BridgeCase wes2BridgeCase;
|
||||
|
||||
private String wes2BridgeScripts = null;
|
||||
|
||||
private static final TypeReference<Map<String, Object>> MAP_TYPE_REFERENCE = new TypeReference<Map<String, Object>>() {
|
||||
};
|
||||
|
||||
public static final String QPID_NAME = "name";
|
||||
|
||||
public static final String QPID_AMQP = "AMQP";
|
||||
|
||||
public static final String QPID_HTTP = "HTTP";
|
||||
|
||||
public static final String QPID_PORT = "port";
|
||||
|
||||
public static final String QPID_PORTS = "ports";
|
||||
|
||||
public Wes2BridgeManager() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @param args
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
if (args.length != 1) {
|
||||
System.out
|
||||
.println("ERROR: The configuration file has not been specified.");
|
||||
System.exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
Wes2BridgeManager manager = new Wes2BridgeManager();
|
||||
try {
|
||||
manager.init(args[0]);
|
||||
} catch (Exception e1) {
|
||||
e1.printStackTrace();
|
||||
System.exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
try {
|
||||
manager.reconfigureEdex();
|
||||
} catch (Exception e1) {
|
||||
e1.printStackTrace();
|
||||
System.exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
try {
|
||||
manager.reconfigurePostgreSQL();
|
||||
} catch (Exception e1) {
|
||||
e1.printStackTrace();
|
||||
System.exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
try {
|
||||
manager.reconfigureQPID();
|
||||
} catch (Exception e1) {
|
||||
e1.printStackTrace();
|
||||
System.exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
try {
|
||||
manager.reconfigurePypies();
|
||||
} catch (Exception e1) {
|
||||
e1.printStackTrace();
|
||||
System.exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
System.exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
||||
public void init(String arg1) throws JAXBException {
|
||||
this.wes2BridgeCase = Wes2BridgeJaxbManager.toWes2BridgeCase(new File(
|
||||
arg1));
|
||||
|
||||
this.wes2BridgeScripts = WES2BRIDGE_DIRECTORY + "/"
|
||||
+ this.wes2BridgeCase.getName() + "/" + "edex-environment";
|
||||
}
|
||||
|
||||
/*
|
||||
* Updates setup.env and wrapper.conf.
|
||||
*/
|
||||
public void reconfigureEdex() throws FileNotFoundException, IOException {
|
||||
final String srcEdexDirectory = AWIPSII + "/" + "edex";
|
||||
final String edexDirectory = WES2BRIDGE_DIRECTORY + "/"
|
||||
+ this.wes2BridgeCase.getName() + "/" + "edex";
|
||||
|
||||
this.updateEdexSetup(srcEdexDirectory, edexDirectory);
|
||||
this.updateEdexWrapper(srcEdexDirectory, edexDirectory);
|
||||
this.updateEdexCamel(edexDirectory);
|
||||
}
|
||||
|
||||
private void updateEdexSetup(String srcEdexDirectory, String edexDirectory)
|
||||
throws FileNotFoundException, IOException, IllegalStateException {
|
||||
String srcsetup_env = srcEdexDirectory + "/bin/setup.env";
|
||||
String setup_env = edexDirectory + "/bin/setup.env";
|
||||
|
||||
BufferedReader br = null;
|
||||
BufferedWriter bw = null;
|
||||
|
||||
try {
|
||||
br = this.getBufferedReader(srcsetup_env);
|
||||
bw = this.getBufferedWriter(setup_env);
|
||||
|
||||
final String line1 = "export DATA_ARCHIVE_ROOT=";
|
||||
final String line2 = "export DB_PORT=";
|
||||
final String line3 = "export BROKER_PORT=";
|
||||
final String line4 = "export HTTP_PORT=";
|
||||
final String line5 = "export BROKER_HTTP=";
|
||||
final String line6 = "export SHARE_DIR=";
|
||||
final String pypiesServerPattern = "(export PYPIES_SERVER=http://.+:)[1-9][0-9]+";
|
||||
final Pattern pattern7 = Pattern.compile(pypiesServerPattern);
|
||||
|
||||
String line = StringUtils.EMPTY;
|
||||
while ((line = br.readLine()) != null) {
|
||||
Matcher matcher = pattern7.matcher(line);
|
||||
|
||||
if (line.startsWith(line1)) {
|
||||
line = line1 + this.wes2BridgeCase.getDataArchiveRoot();
|
||||
} else if (line.startsWith(line2)) {
|
||||
line = line2 + this.wes2BridgeCase.getDatabasePort();
|
||||
} else if (line.startsWith(line3)) {
|
||||
line = line3 + this.wes2BridgeCase.getJmsPort();
|
||||
} else if (line.startsWith(line4)) {
|
||||
line = line4 + this.wes2BridgeCase.getEdexHttpPort();
|
||||
} else if (line.startsWith(line5)) {
|
||||
line = line5 + this.wes2BridgeCase.getQpidHttpPort();
|
||||
} else if (line.startsWith(line6)) {
|
||||
line = line6 + edexDirectory + "/data/share";
|
||||
} else if (matcher.matches()) {
|
||||
line = matcher.group(GROUP_INDEX_ONE)
|
||||
+ this.wes2BridgeCase.getHttpdPypiesPort();
|
||||
}
|
||||
|
||||
bw.write(line + "\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Need to overwrite the Java, Python, and PSQL locations using
|
||||
* setup.env ever since edex_camel was updated to use a login shell
|
||||
* to run the EDEX start.sh script.
|
||||
*/
|
||||
bw.write("export JAVA_INSTALL=/awips2/java\n");
|
||||
bw.write("export PYTHON_INSTALL=/awips2/python\n");
|
||||
bw.write("export PSQL_INSTALL=/awips2/psql\n");
|
||||
} finally {
|
||||
br.close();
|
||||
bw.close();
|
||||
}
|
||||
}
|
||||
|
||||
/* Disable JMX. */
|
||||
private void updateEdexWrapper(String srcEdexDirectory, String edexDirectory)
|
||||
throws FileNotFoundException, IOException {
|
||||
String srcwrapper_conf = srcEdexDirectory + "/conf/wrapper.conf";
|
||||
String wrapper_conf = edexDirectory + "/conf/wrapper.conf";
|
||||
|
||||
BufferedReader br = null;
|
||||
BufferedWriter bw = null;
|
||||
try {
|
||||
br = this.getBufferedReader(srcwrapper_conf);
|
||||
bw = this.getBufferedWriter(wrapper_conf);
|
||||
|
||||
/*
|
||||
* Add a new wes2bridge.instance JVM argument so that it will be
|
||||
* possible to determine which edex instance belongs to which test
|
||||
* case.
|
||||
*/
|
||||
|
||||
int javaAdditionalMax = 0;
|
||||
|
||||
final String line1 = "wrapper.jvm.parameter.order.2=-Daw.site.identifier";
|
||||
|
||||
final String javaAdditionalPatternRegex = "wrapper\\.java\\.additional\\.([0-9]+)=.+";
|
||||
final Pattern javaAdditionalPattern = Pattern
|
||||
.compile(javaAdditionalPatternRegex);
|
||||
|
||||
String line = StringUtils.EMPTY;
|
||||
while ((line = br.readLine()) != null) {
|
||||
Matcher matcher = javaAdditionalPattern.matcher(line);
|
||||
if (matcher.matches()) {
|
||||
/* Guaranteed to be numeric based on the regex */
|
||||
int javaAdditional = Integer.parseInt(matcher.group(1));
|
||||
if (javaAdditional > javaAdditionalMax) {
|
||||
javaAdditionalMax = javaAdditional;
|
||||
}
|
||||
}
|
||||
|
||||
if (line.equals(line1)) {
|
||||
bw.write(line + "\n");
|
||||
/*
|
||||
* Ensure that the wes2bridge test name will be third in the
|
||||
* list of jvm arguments.
|
||||
*/
|
||||
line = "wrapper.jvm.parameter.order.3=-Dwes2bridge.instance";
|
||||
}
|
||||
|
||||
bw.write(line + "\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* add the additional JVM argument.
|
||||
*/
|
||||
++javaAdditionalMax;
|
||||
String jvmArg = "wrapper.java.additional." + javaAdditionalMax
|
||||
+ "=-Dwes2bridge.instance=" + this.wes2BridgeCase.getName();
|
||||
bw.write(jvmArg);
|
||||
} finally {
|
||||
br.close();
|
||||
bw.close();
|
||||
}
|
||||
}
|
||||
|
||||
private void updateEdexCamel(String edexDirectory)
|
||||
throws FileNotFoundException, IOException {
|
||||
final String srcedex_camel = AWIPSII_WES2BRIDGE_SCRIPTS + "/"
|
||||
+ "edex_camel";
|
||||
final String edex_camel = this.wes2BridgeScripts + "/edex_camel";
|
||||
|
||||
BufferedReader br = null;
|
||||
BufferedWriter bw = null;
|
||||
try {
|
||||
br = this.getBufferedReader(srcedex_camel);
|
||||
bw = this.getBufferedWriter(edex_camel);
|
||||
|
||||
final String line1 = "export EDEX_INSTALL=";
|
||||
final String line2 = "export DATA_ARCHIVE_ROOT=";
|
||||
final String line3 = "CAMELPROCESS=`ps -ef | grep \"aw.site.identifier\"|grep -c \"edex.run.mode=${1} \" `";
|
||||
final String line4 = "_camel_pid=`pgrep -f -u $EDEXUSER \"java -Dedex.run.mode=${1} \"`";
|
||||
|
||||
String line = StringUtils.EMPTY;
|
||||
while ((line = br.readLine()) != null) {
|
||||
if (line.trim().startsWith(line1)) {
|
||||
line = line1 + edexDirectory;
|
||||
} else if (line.trim().startsWith(line2)) {
|
||||
line = line2 + this.wes2BridgeCase.getDataArchiveRoot();
|
||||
} else if (line.trim().startsWith(line3)) {
|
||||
line = "CAMELPROCESS=`ps -ef | "
|
||||
+ "grep \"wes2bridge.instance="
|
||||
+ this.wes2BridgeCase.getName() + "\" | "
|
||||
+ "grep -c \"edex.run.mode=${1} \" `";
|
||||
} else if (line.trim().startsWith(line4)) {
|
||||
line = "_camel_pid=`pgrep -f \"java.*-Dedex.run.mode=${1} -Daw.site.identifier=.+ -Dwes2bridge.instance="
|
||||
+ this.wes2BridgeCase.getName() + " \"`";
|
||||
}
|
||||
|
||||
bw.write(line + "\n");
|
||||
}
|
||||
} finally {
|
||||
br.close();
|
||||
bw.close();
|
||||
}
|
||||
}
|
||||
|
||||
public void reconfigurePostgreSQL() throws FileNotFoundException,
|
||||
IOException {
|
||||
final String postgresqlRootDirectory = WES2BRIDGE_DIRECTORY
|
||||
+ File.separator + this.wes2BridgeCase.getName();
|
||||
final String srcDataDirectory = AWIPSII + File.separator + "data";
|
||||
|
||||
this.updateEdexPostgres(postgresqlRootDirectory);
|
||||
this.updatePostgresqlConf(srcDataDirectory);
|
||||
}
|
||||
|
||||
private void updateEdexPostgres(String postgresqlRootDirectory)
|
||||
throws FileNotFoundException, IOException {
|
||||
final String srcedex_postgres = AWIPSII_WES2BRIDGE_SCRIPTS + "/"
|
||||
+ "edex_postgres";
|
||||
final String edex_postgres = this.wes2BridgeScripts + "/edex_postgres";
|
||||
|
||||
BufferedReader br = null;
|
||||
BufferedWriter bw = null;
|
||||
try {
|
||||
br = this.getBufferedReader(srcedex_postgres);
|
||||
bw = this.getBufferedWriter(edex_postgres);
|
||||
|
||||
final String line1 = "POSTGRESQL_INSTALL_ROOT=";
|
||||
|
||||
String line = StringUtils.EMPTY;
|
||||
while ((line = br.readLine()) != null) {
|
||||
if (line.startsWith(line1)) {
|
||||
line = line1 + postgresqlRootDirectory;
|
||||
}
|
||||
|
||||
bw.write(line + "\n");
|
||||
}
|
||||
} finally {
|
||||
br.close();
|
||||
bw.close();
|
||||
}
|
||||
}
|
||||
|
||||
private void updatePostgresqlConf(String srcDataDirectory)
|
||||
throws FileNotFoundException, IOException {
|
||||
final String postgresqlConf = "postgresql.conf";
|
||||
final String srcPostgresqlConf = srcDataDirectory + File.separator
|
||||
+ postgresqlConf;
|
||||
final String destPostgresqlConf = WES2BRIDGE_DIRECTORY + File.separator
|
||||
+ this.wes2BridgeCase.getName() + File.separator + "data"
|
||||
+ File.separator + postgresqlConf;
|
||||
|
||||
final String regex1 = "^(port = )([0-9]+)(.+)";
|
||||
final Pattern pattern1 = Pattern.compile(regex1);
|
||||
|
||||
BufferedReader br = null;
|
||||
BufferedWriter bw = null;
|
||||
try {
|
||||
br = this.getBufferedReader(srcPostgresqlConf);
|
||||
bw = this.getBufferedWriter(destPostgresqlConf);
|
||||
|
||||
String line = StringUtils.EMPTY;
|
||||
// only used once - clearing it will not be necessary
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
while ((line = br.readLine()) != null) {
|
||||
Matcher matcher = pattern1.matcher(line);
|
||||
if (matcher.matches()) {
|
||||
stringBuilder.append(matcher.group(1));
|
||||
stringBuilder.append(this.wes2BridgeCase.getDatabasePort());
|
||||
stringBuilder.append(matcher.group(3));
|
||||
|
||||
line = stringBuilder.toString();
|
||||
}
|
||||
|
||||
bw.write(line + "\n");
|
||||
}
|
||||
} finally {
|
||||
br.close();
|
||||
bw.close();
|
||||
}
|
||||
}
|
||||
|
||||
public void reconfigureQPID() throws FileNotFoundException, IOException {
|
||||
final String srcQpidDirectory = AWIPSII + "/" + "qpid";
|
||||
final String qpidDirectory = WES2BRIDGE_DIRECTORY + "/"
|
||||
+ this.wes2BridgeCase.getName() + "/" + "qpid";
|
||||
|
||||
this.updateQpidConfigJSON(srcQpidDirectory, qpidDirectory);
|
||||
this.updateQPIDD(qpidDirectory);
|
||||
}
|
||||
|
||||
/* Updates qpid config.json */
|
||||
private void updateQpidConfigJSON(String srcQpidDirectory,
|
||||
String qpidDirectory) throws FileNotFoundException, IOException {
|
||||
String srcconfig_json = srcQpidDirectory + "/config.json";
|
||||
String config_json = qpidDirectory + "/config.json";
|
||||
|
||||
try (BufferedWriter bw = this.getBufferedWriter(config_json);) {
|
||||
|
||||
List<String> lines = Files.readAllLines(Paths.get(srcconfig_json),
|
||||
Charset.defaultCharset());
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
for (String line : lines) {
|
||||
stringBuilder.append(line);
|
||||
}
|
||||
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
Map<String, Object> attributesMap = mapper.readValue(
|
||||
stringBuilder.toString(), MAP_TYPE_REFERENCE);
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
ArrayList<Object> ports = (ArrayList<Object>) attributesMap
|
||||
.get(QPID_PORTS);
|
||||
|
||||
for (int x = 0; x < ports.size(); x++) {
|
||||
@SuppressWarnings("unchecked")
|
||||
Map<String, Object> port = (Map<String, Object>) ports.get(x);
|
||||
String name = (String) port.get(QPID_NAME);
|
||||
if (QPID_AMQP.equals(name)) {
|
||||
port.put(QPID_PORT, this.wes2BridgeCase.getJmsPort());
|
||||
} else if (QPID_HTTP.equals(name)) {
|
||||
port.put(QPID_PORT, this.wes2BridgeCase.getQpidHttpPort());
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Write the updated configuration file to its destination.
|
||||
*/
|
||||
mapper.writerWithDefaultPrettyPrinter().writeValue(bw,
|
||||
attributesMap);
|
||||
}
|
||||
}
|
||||
|
||||
private void updateQPIDD(String qpidDirectory)
|
||||
throws FileNotFoundException, IOException {
|
||||
final String srcqpidd = AWIPSII_WES2BRIDGE_SCRIPTS + "/" + "qpidd";
|
||||
final String qpidd = this.wes2BridgeScripts + "/qpidd";
|
||||
|
||||
BufferedReader br = null;
|
||||
BufferedWriter bw = null;
|
||||
try {
|
||||
br = this.getBufferedReader(srcqpidd);
|
||||
bw = this.getBufferedWriter(qpidd);
|
||||
|
||||
final String line1 = "QPID_HOME=";
|
||||
|
||||
String line = StringUtils.EMPTY;
|
||||
while ((line = br.readLine()) != null) {
|
||||
if (line.startsWith(line1)) {
|
||||
line = line1 + qpidDirectory;
|
||||
}
|
||||
|
||||
bw.write(line + "\n");
|
||||
}
|
||||
} finally {
|
||||
br.close();
|
||||
bw.close();
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* This method will: 1) update pypies.cfg 2) update httpd.conf
|
||||
*/
|
||||
public void reconfigurePypies() throws FileNotFoundException, IOException {
|
||||
final String srcPypiesDirectory = AWIPSII + File.separator + "pypies";
|
||||
final String pypiesDirectory = WES2BRIDGE_DIRECTORY + File.separator
|
||||
+ this.wes2BridgeCase.getName() + File.separator + "pypies";
|
||||
|
||||
final String srcHttpdPypiesDirectory = AWIPSII + File.separator
|
||||
+ "httpd_pypies";
|
||||
final String httpdPypiesDirectory = WES2BRIDGE_DIRECTORY
|
||||
+ File.separator + this.wes2BridgeCase.getName()
|
||||
+ File.separator + "httpd_pypies";
|
||||
|
||||
this.updatePypiesCfg(srcPypiesDirectory, pypiesDirectory);
|
||||
this.updateHttpdConf(srcHttpdPypiesDirectory, httpdPypiesDirectory);
|
||||
this.updateHttpdPypies(httpdPypiesDirectory, pypiesDirectory);
|
||||
}
|
||||
|
||||
private void updatePypiesCfg(String srcPypiesDirectory,
|
||||
String pypiesDirectory) throws FileNotFoundException, IOException,
|
||||
IllegalArgumentException {
|
||||
final String pypiesCfgPathSuffix = File.separator + "conf"
|
||||
+ File.separator + "pypies.cfg";
|
||||
final String srcpypiescfg = srcPypiesDirectory + pypiesCfgPathSuffix;
|
||||
final String pypiescfg = pypiesDirectory + pypiesCfgPathSuffix;
|
||||
|
||||
// use the default location for the hdf5 root
|
||||
final String hdf5DirectoryLocation = WES2BRIDGE_DIRECTORY
|
||||
+ File.separator + this.wes2BridgeCase.getName()
|
||||
+ DEFAULT_HDF5_DIRECTORY;
|
||||
final String logFileDirectoryLocation = pypiesDirectory
|
||||
+ File.separator + "logs";
|
||||
|
||||
BufferedReader br = null;
|
||||
BufferedWriter bw = null;
|
||||
try {
|
||||
br = this.getBufferedReader(srcpypiescfg);
|
||||
bw = this.getBufferedWriter(pypiescfg);
|
||||
|
||||
final String hdf5DirPattern = "(hdf5dir=).+";
|
||||
final String logFileDirPattern = "(logFileDir=).+";
|
||||
final String loggingPortPattern = "(logging_port=)[1-9][0-9]+";
|
||||
final Pattern pattern1 = Pattern.compile(hdf5DirPattern);
|
||||
final Pattern pattern2 = Pattern.compile(logFileDirPattern);
|
||||
final Pattern pattern3 = Pattern.compile(loggingPortPattern);
|
||||
|
||||
String line = StringUtils.EMPTY;
|
||||
while ((line = br.readLine()) != null) {
|
||||
Matcher matcher1 = pattern1.matcher(line);
|
||||
Matcher matcher2 = pattern2.matcher(line);
|
||||
Matcher matcher3 = pattern3.matcher(line);
|
||||
|
||||
if (matcher1.matches()) {
|
||||
line = matcher1.group(GROUP_INDEX_ONE);
|
||||
line += hdf5DirectoryLocation;
|
||||
} else if (matcher2.matches()) {
|
||||
line = matcher2.group(GROUP_INDEX_ONE);
|
||||
line += logFileDirectoryLocation;
|
||||
} else if (matcher3.matches()) {
|
||||
line = matcher3.group(GROUP_INDEX_ONE);
|
||||
line += this.wes2BridgeCase.getPypiesLoggingPort();
|
||||
}
|
||||
|
||||
bw.write(line + "\n");
|
||||
}
|
||||
} finally {
|
||||
br.close();
|
||||
bw.close();
|
||||
}
|
||||
}
|
||||
|
||||
private void updateHttpdConf(String srcHttpdPypiesDirectory,
|
||||
String httpdPypiesDirectory) throws FileNotFoundException,
|
||||
IOException {
|
||||
final String httpdConfPathSuffix = File.separator + "etc"
|
||||
+ File.separator + "httpd" + File.separator + "conf"
|
||||
+ File.separator + "httpd.conf";
|
||||
final String srcHttpdConf = srcHttpdPypiesDirectory
|
||||
+ httpdConfPathSuffix;
|
||||
final String httpdConf = httpdPypiesDirectory + httpdConfPathSuffix;
|
||||
final String serverRoot = httpdPypiesDirectory + File.separator + "etc"
|
||||
+ File.separator + "httpd";
|
||||
|
||||
BufferedReader br = null;
|
||||
BufferedWriter bw = null;
|
||||
try {
|
||||
br = this.getBufferedReader(srcHttpdConf);
|
||||
bw = this.getBufferedWriter(httpdConf);
|
||||
|
||||
final String listenPattern = "(Listen )[1-9][0-9]+";
|
||||
final String serverRootPattern = "(ServerRoot \").+(\")";
|
||||
final Pattern pattern1 = Pattern.compile(listenPattern);
|
||||
final Pattern pattern2 = Pattern.compile(serverRootPattern);
|
||||
|
||||
String line = StringUtils.EMPTY;
|
||||
while ((line = br.readLine()) != null) {
|
||||
Matcher matcher1 = pattern1.matcher(line);
|
||||
Matcher matcher2 = pattern2.matcher(line);
|
||||
if (matcher1.matches()) {
|
||||
line = matcher1.group(GROUP_INDEX_ONE);
|
||||
line += this.wes2BridgeCase.getHttpdPypiesPort();
|
||||
} else if (matcher2.matches()) {
|
||||
line = matcher2.group(GROUP_INDEX_ONE);
|
||||
line += serverRoot;
|
||||
line += matcher2.group(GROUP_INDEX_TWO);
|
||||
}
|
||||
|
||||
bw.write(line + "\n");
|
||||
}
|
||||
} finally {
|
||||
br.close();
|
||||
bw.close();
|
||||
}
|
||||
}
|
||||
|
||||
private void updateHttpdPypies(String httpdPypiesDirectory,
|
||||
String pypiesDirectory) throws IOException, FileNotFoundException {
|
||||
final String srchttpd_pypies = AWIPSII_WES2BRIDGE_SCRIPTS + "/"
|
||||
+ "httpd-pypies";
|
||||
final String httpd_pypies = this.wes2BridgeScripts + "/httpd-pypies";
|
||||
|
||||
BufferedReader br = null;
|
||||
BufferedWriter bw = null;
|
||||
try {
|
||||
br = this.getBufferedReader(srchttpd_pypies);
|
||||
bw = this.getBufferedWriter(httpd_pypies);
|
||||
|
||||
final String httpdPypiesInstallPattern = "(HTTPD_PYPIES_INSTALL=).+";
|
||||
final String loggingCommandPattern = "( *nohup su awips -c \"\\$loggingCmd > /tmp/pypiesLoggingService)(.log 2>&1\" > /dev/null &)";
|
||||
final String pypiesConfigurationPattern = "(export PYPIES_CFG=).+";
|
||||
final Pattern pattern1 = Pattern.compile(httpdPypiesInstallPattern);
|
||||
final Pattern pattern2 = Pattern.compile(loggingCommandPattern);
|
||||
final Pattern pattern3 = Pattern
|
||||
.compile(pypiesConfigurationPattern);
|
||||
|
||||
String line = StringUtils.EMPTY;
|
||||
while ((line = br.readLine()) != null) {
|
||||
Matcher matcher1 = pattern1.matcher(line);
|
||||
Matcher matcher2 = pattern2.matcher(line);
|
||||
Matcher matcher3 = pattern3.matcher(line);
|
||||
|
||||
if (matcher1.matches()) {
|
||||
line = matcher1.group(GROUP_INDEX_ONE);
|
||||
line += httpdPypiesDirectory;
|
||||
} else if (matcher2.matches()) {
|
||||
line = matcher2.group(GROUP_INDEX_ONE);
|
||||
line += this.wes2BridgeCase.getName();
|
||||
line += matcher2.group(GROUP_INDEX_TWO);
|
||||
} else if (matcher3.matches()) {
|
||||
line = matcher3.group(GROUP_INDEX_ONE) + pypiesDirectory
|
||||
+ File.separator + "conf" + File.separator
|
||||
+ "pypies.cfg";
|
||||
}
|
||||
|
||||
bw.write(line + "\n");
|
||||
}
|
||||
} finally {
|
||||
br.close();
|
||||
bw.close();
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* The following functions and usage of the following functions would no
|
||||
* longer be necessary with Apache Commons IOUtils.
|
||||
*/
|
||||
private BufferedReader getBufferedReader(String file)
|
||||
throws FileNotFoundException {
|
||||
return new BufferedReader(new FileReader(this.getFile(file)));
|
||||
}
|
||||
|
||||
private BufferedWriter getBufferedWriter(String file) throws IOException {
|
||||
return new BufferedWriter(new FileWriter(this.getFile(file)));
|
||||
}
|
||||
|
||||
private File getFile(String file) {
|
||||
return new File(file);
|
||||
}
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
log4j.rootLogger=ERROR, CA
|
||||
|
||||
log4j.appender.CA=org.apache.log4j.ConsoleAppender
|
||||
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
|
||||
|
||||
log4j.appender.CA.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
|
|
@ -1,69 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# A port of the Java DynamicSerializeManager. Should be used to read/write
|
||||
# DynamicSerialize binary data.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 06/09/10 njensen Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
from thrift.transport import TTransport
|
||||
import SelfDescribingBinaryProtocol, ThriftSerializationContext
|
||||
|
||||
class DynamicSerializationManager:
|
||||
|
||||
def __init__(self):
|
||||
self.transport = None
|
||||
|
||||
def _deserialize(self, ctx):
|
||||
return ctx.deserializeMessage()
|
||||
|
||||
def deserializeBytes(self, bytes):
|
||||
ctx = self._buildSerializationContext(bytes)
|
||||
ctx.readMessageStart()
|
||||
obj = self._deserialize(ctx)
|
||||
ctx.readMessageEnd()
|
||||
return obj
|
||||
|
||||
def _buildSerializationContext(self, bytes=None):
|
||||
self.transport = TTransport.TMemoryBuffer(bytes)
|
||||
protocol = SelfDescribingBinaryProtocol.SelfDescribingBinaryProtocol(self.transport)
|
||||
return ThriftSerializationContext.ThriftSerializationContext(self, protocol)
|
||||
|
||||
def serializeObject(self, obj):
|
||||
ctx = self._buildSerializationContext()
|
||||
ctx.writeMessageStart("dynamicSerialize")
|
||||
self._serialize(ctx, obj)
|
||||
ctx.writeMessageEnd()
|
||||
return self.transport.getvalue()
|
||||
|
||||
def _serialize(self, ctx, obj):
|
||||
ctx.serializeMessage(obj)
|
|
@ -1,142 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
from thrift.protocol.TProtocol import *
|
||||
from thrift.protocol.TBinaryProtocol import *
|
||||
from struct import pack, unpack
|
||||
|
||||
|
||||
#
|
||||
# Partially compatible AWIPS-II Thrift Binary Protocol
|
||||
#
|
||||
# <B>Missing functionality:</B>
|
||||
# <UL>
|
||||
# <LI> Custom Serializers
|
||||
# <LI> Inheritance
|
||||
# </UL>
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 11/11/09 chammack Initial Creation.
|
||||
# 06/09/10 njensen Added float, list methods
|
||||
# Apr 24, 2015 4425 nabowle Add F64List support.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
import struct, numpy
|
||||
|
||||
FLOAT = 64
|
||||
|
||||
intList = numpy.dtype(numpy.int32).newbyteorder('>')
|
||||
floatList = numpy.dtype(numpy.float32).newbyteorder('>')
|
||||
longList = numpy.dtype(numpy.int64).newbyteorder('>')
|
||||
shortList = numpy.dtype(numpy.int16).newbyteorder('>')
|
||||
byteList = numpy.dtype(numpy.int8).newbyteorder('>')
|
||||
doubleList = numpy.dtype(numpy.float64).newbyteorder('>')
|
||||
|
||||
class SelfDescribingBinaryProtocol(TBinaryProtocol):
|
||||
|
||||
def readFieldBegin(self):
|
||||
type = self.readByte()
|
||||
if type == TType.STOP:
|
||||
return (None, type, 0)
|
||||
name = self.readString()
|
||||
id = self.readI16()
|
||||
return (name, type, id)
|
||||
|
||||
def readStructBegin(self):
|
||||
return self.readString()
|
||||
|
||||
def writeStructBegin(self, name):
|
||||
self.writeString(name)
|
||||
|
||||
def writeFieldBegin(self, name, type, id):
|
||||
self.writeByte(type)
|
||||
self.writeString(name)
|
||||
self.writeI16(id)
|
||||
|
||||
def readFloat(self):
|
||||
d = self.readI32()
|
||||
dAsBytes = struct.pack('i', d)
|
||||
f = struct.unpack('f', dAsBytes)
|
||||
return f[0]
|
||||
|
||||
def writeFloat(self, f):
|
||||
dAsBytes = struct.pack('f', f)
|
||||
i = struct.unpack('i', dAsBytes)
|
||||
self.writeI32(i[0])
|
||||
|
||||
def readI32List(self, sz):
|
||||
buff = self.trans.readAll(4*sz)
|
||||
val = numpy.frombuffer(buff, dtype=intList, count=sz)
|
||||
return val
|
||||
|
||||
def readF32List(self, sz):
|
||||
buff = self.trans.readAll(4*sz)
|
||||
val = numpy.frombuffer(buff, dtype=floatList, count=sz)
|
||||
return val
|
||||
|
||||
def readF64List(self, sz):
|
||||
buff = self.trans.readAll(8*sz)
|
||||
val = numpy.frombuffer(buff, dtype=doubleList, count=sz)
|
||||
return val
|
||||
|
||||
def readI64List(self, sz):
|
||||
buff = self.trans.readAll(8*sz)
|
||||
val = numpy.frombuffer(buff, dtype=longList, count=sz)
|
||||
return val
|
||||
|
||||
def readI16List(self, sz):
|
||||
buff = self.trans.readAll(2*sz)
|
||||
val = numpy.frombuffer(buff, dtype=shortList, count=sz)
|
||||
return val
|
||||
|
||||
def readI8List(self, sz):
|
||||
buff = self.trans.readAll(sz)
|
||||
val = numpy.frombuffer(buff, dtype=byteList, count=sz)
|
||||
return val
|
||||
|
||||
def writeI32List(self, buff):
|
||||
b = numpy.asarray(buff, intList)
|
||||
self.trans.write(numpy.getbuffer(b))
|
||||
|
||||
def writeF32List(self, buff):
|
||||
b = numpy.asarray(buff, floatList)
|
||||
self.trans.write(numpy.getbuffer(b))
|
||||
|
||||
def writeF64List(self, buff):
|
||||
b = numpy.asarray(buff, doubleList)
|
||||
self.trans.write(numpy.getbuffer(b))
|
||||
|
||||
def writeI64List(self, buff):
|
||||
b = numpy.asarray(buff, longList)
|
||||
self.trans.write(numpy.getbuffer(b))
|
||||
|
||||
def writeI16List(self, buff):
|
||||
b = numpy.asarray(buff, shortList)
|
||||
self.trans.write(numpy.getbuffer(b))
|
||||
|
||||
def writeI8List(self, buff):
|
||||
b = numpy.asarray(buff, byteList)
|
||||
self.trans.write(numpy.getbuffer(b))
|
|
@ -1,424 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# A port of the Java ThriftSerializationContext, used for reading/writing
|
||||
# DynamicSerialize objects to/from thrift.
|
||||
#
|
||||
# For serialization, it has no knowledge of the expected types in other
|
||||
# languages, it is instead all based on inspecting the types of the objects
|
||||
# passed to it. Therefore, ensure the types of python objects and primitives
|
||||
# match what they should be in the destination language.
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 06/09/10 njensen Initial Creation.
|
||||
# 06/12/13 #2099 dgilling Implement readObject() and
|
||||
# writeObject().
|
||||
# Apr 24, 2015 4425 nabowle Add Double support
|
||||
# Oct 17, 2016 5919 njensen Optimized for speed
|
||||
#
|
||||
#
|
||||
|
||||
from thrift.Thrift import TType
|
||||
import inspect
|
||||
import sys
|
||||
import types
|
||||
import time
|
||||
import dynamicserialize
|
||||
from dynamicserialize import dstypes, adapters
|
||||
import SelfDescribingBinaryProtocol
|
||||
import numpy
|
||||
|
||||
DS_LEN = len('dynamicserialize.dstypes.')
|
||||
|
||||
dsObjTypes = {}
|
||||
|
||||
|
||||
def buildObjMap(module):
|
||||
if '__all__' in module.__dict__:
|
||||
for i in module.__all__:
|
||||
name = module.__name__ + '.' + i
|
||||
__import__(name)
|
||||
buildObjMap(sys.modules[name])
|
||||
else:
|
||||
clzName = module.__name__[module.__name__.rfind('.') + 1:]
|
||||
clz = module.__dict__[clzName]
|
||||
tname = module.__name__
|
||||
tname = tname[DS_LEN:]
|
||||
dsObjTypes[tname] = clz
|
||||
|
||||
buildObjMap(dstypes)
|
||||
|
||||
pythonToThriftMap = {
|
||||
types.StringType: TType.STRING,
|
||||
types.IntType: TType.I32,
|
||||
types.LongType: TType.I64,
|
||||
types.ListType: TType.LIST,
|
||||
types.DictionaryType: TType.MAP,
|
||||
type(set([])): TType.SET,
|
||||
types.FloatType: SelfDescribingBinaryProtocol.FLOAT,
|
||||
# types.FloatType: TType.DOUBLE,
|
||||
types.BooleanType: TType.BOOL,
|
||||
types.InstanceType: TType.STRUCT,
|
||||
types.NoneType: TType.VOID,
|
||||
numpy.float32: SelfDescribingBinaryProtocol.FLOAT,
|
||||
numpy.int32: TType.I32,
|
||||
numpy.ndarray: TType.LIST,
|
||||
numpy.object_: TType.STRING, # making an assumption here
|
||||
numpy.string_: TType.STRING,
|
||||
numpy.float64: TType.DOUBLE,
|
||||
numpy.int16: TType.I16,
|
||||
numpy.int8: TType.BYTE,
|
||||
numpy.int64: TType.I64
|
||||
}
|
||||
|
||||
primitiveSupport = (TType.BYTE, TType.I16, TType.I32, TType.I64,
|
||||
SelfDescribingBinaryProtocol.FLOAT, TType.DOUBLE)
|
||||
|
||||
|
||||
class ThriftSerializationContext(object):
|
||||
|
||||
def __init__(self, serializationManager, selfDescribingBinaryProtocol):
|
||||
self.serializationManager = serializationManager
|
||||
self.protocol = selfDescribingBinaryProtocol
|
||||
self.typeDeserializationMethod = {
|
||||
TType.STRING: self.protocol.readString,
|
||||
TType.I16: self.protocol.readI16,
|
||||
TType.I32: self.protocol.readI32,
|
||||
TType.LIST: self._deserializeArray,
|
||||
TType.MAP: self._deserializeMap,
|
||||
TType.SET: self._deserializeSet,
|
||||
SelfDescribingBinaryProtocol.FLOAT: self.protocol.readFloat,
|
||||
TType.BYTE: self.protocol.readByte,
|
||||
TType.I64: self.protocol.readI64,
|
||||
TType.DOUBLE: self.protocol.readDouble,
|
||||
TType.BOOL: self.protocol.readBool,
|
||||
TType.STRUCT: self.deserializeMessage,
|
||||
TType.VOID: lambda: None
|
||||
}
|
||||
self.typeSerializationMethod = {
|
||||
TType.STRING: self.protocol.writeString,
|
||||
TType.I16: self.protocol.writeI16,
|
||||
TType.I32: self.protocol.writeI32,
|
||||
TType.LIST: self._serializeArray,
|
||||
TType.MAP: self._serializeMap,
|
||||
TType.SET: self._serializeSet,
|
||||
SelfDescribingBinaryProtocol.FLOAT: self.protocol.writeFloat,
|
||||
TType.BYTE: self.protocol.writeByte,
|
||||
TType.I64: self.protocol.writeI64,
|
||||
TType.DOUBLE: self.protocol.writeDouble,
|
||||
TType.BOOL: self.protocol.writeBool,
|
||||
TType.STRUCT: self.serializeMessage,
|
||||
TType.VOID: lambda x: None
|
||||
}
|
||||
self.listDeserializationMethod = {
|
||||
TType.BYTE: self.protocol.readI8List,
|
||||
TType.I16: self.protocol.readI16List,
|
||||
TType.I32: self.protocol.readI32List,
|
||||
TType.I64: self.protocol.readI64List,
|
||||
SelfDescribingBinaryProtocol.FLOAT: self.protocol.readF32List,
|
||||
TType.DOUBLE: self.protocol.readF64List
|
||||
}
|
||||
self.listSerializationMethod = {
|
||||
TType.BYTE: self.protocol.writeI8List,
|
||||
TType.I16: self.protocol.writeI16List,
|
||||
TType.I32: self.protocol.writeI32List,
|
||||
TType.I64: self.protocol.writeI64List,
|
||||
SelfDescribingBinaryProtocol.FLOAT: self.protocol.writeF32List,
|
||||
TType.DOUBLE: self.protocol.writeF64List
|
||||
}
|
||||
|
||||
def readMessageStart(self):
|
||||
msg = self.protocol.readMessageBegin()
|
||||
return msg[0]
|
||||
|
||||
def readMessageEnd(self):
|
||||
self.protocol.readMessageEnd()
|
||||
|
||||
def deserializeMessage(self):
|
||||
name = self.protocol.readStructBegin()
|
||||
if name.isdigit():
|
||||
obj = self._deserializeType(int(name))
|
||||
return obj
|
||||
name = name.replace('_', '.')
|
||||
if name in adapters.classAdapterRegistry:
|
||||
return adapters.classAdapterRegistry[name].deserialize(self)
|
||||
elif '$' in name:
|
||||
# it's an inner class, we're going to hope it's an enum, treat it
|
||||
# special
|
||||
fieldName, fieldType, fieldId = self.protocol.readFieldBegin()
|
||||
if fieldName != '__enumValue__':
|
||||
raise dynamiceserialize.SerializationException(
|
||||
"Expected to find enum payload. Found: " + fieldName)
|
||||
obj = self.protocol.readString()
|
||||
self.protocol.readFieldEnd()
|
||||
return obj
|
||||
else:
|
||||
clz = dsObjTypes[name]
|
||||
obj = clz()
|
||||
|
||||
while self._deserializeField(name, obj):
|
||||
pass
|
||||
|
||||
self.protocol.readStructEnd()
|
||||
return obj
|
||||
|
||||
def _deserializeType(self, b):
|
||||
try:
|
||||
return self.typeDeserializationMethod[b]()
|
||||
except KeyError:
|
||||
raise dynamicserialize.SerializationException(
|
||||
"Unsupported type value " + str(b))
|
||||
|
||||
def _deserializeField(self, structname, obj):
|
||||
fieldName, fieldType, fieldId = self.protocol.readFieldBegin()
|
||||
if fieldType == TType.STOP:
|
||||
return False
|
||||
elif fieldType != TType.VOID:
|
||||
result = self._deserializeType(fieldType)
|
||||
lookingFor = "set" + fieldName[0].upper() + fieldName[1:]
|
||||
|
||||
try:
|
||||
setMethod = getattr(obj, lookingFor)
|
||||
setMethod(result)
|
||||
except:
|
||||
raise dynamicserialize.SerializationException(
|
||||
"Couldn't find setter method " + lookingFor)
|
||||
|
||||
self.protocol.readFieldEnd()
|
||||
return True
|
||||
|
||||
def _deserializeArray(self):
|
||||
listType, size = self.protocol.readListBegin()
|
||||
result = []
|
||||
if size:
|
||||
if listType not in primitiveSupport:
|
||||
m = self.typeDeserializationMethod[listType]
|
||||
result = [m() for n in xrange(size)]
|
||||
else:
|
||||
result = self.listDeserializationMethod[listType](size)
|
||||
self.protocol.readListEnd()
|
||||
return result
|
||||
|
||||
def _deserializeMap(self):
|
||||
keyType, valueType, size = self.protocol.readMapBegin()
|
||||
result = {}
|
||||
for n in xrange(size):
|
||||
# can't go off the type, due to java generics limitations dynamic serialize is
|
||||
# serializing keys and values as void
|
||||
key = self.typeDeserializationMethod[TType.STRUCT]()
|
||||
value = self.typeDeserializationMethod[TType.STRUCT]()
|
||||
result[key] = value
|
||||
self.protocol.readMapEnd()
|
||||
return result
|
||||
|
||||
def _deserializeSet(self):
|
||||
setType, setSize = self.protocol.readSetBegin()
|
||||
result = set([])
|
||||
for n in xrange(setSize):
|
||||
result.add(self.typeDeserializationMethod[TType.STRUCT]())
|
||||
self.protocol.readSetEnd()
|
||||
return result
|
||||
|
||||
def _lookupType(self, obj):
|
||||
pyt = type(obj)
|
||||
if pyt in pythonToThriftMap:
|
||||
return pythonToThriftMap[pyt]
|
||||
elif pyt.__module__[:DS_LEN - 1] == ('dynamicserialize.dstypes'):
|
||||
return pythonToThriftMap[types.InstanceType]
|
||||
else:
|
||||
raise dynamicserialize.SerializationException(
|
||||
"Don't know how to serialize object of type: " + str(pyt))
|
||||
|
||||
def serializeMessage(self, obj):
|
||||
tt = self._lookupType(obj)
|
||||
|
||||
if tt == TType.STRUCT:
|
||||
fqn = obj.__module__[DS_LEN:]
|
||||
if fqn in adapters.classAdapterRegistry:
|
||||
# get proper class name when writing class name to serialization stream
|
||||
# in case we have a special inner-class case
|
||||
m = sys.modules[adapters.classAdapterRegistry[fqn].__name__]
|
||||
if isinstance(m.ClassAdapter, list):
|
||||
fqn = m.ClassAdapter[0]
|
||||
self.protocol.writeStructBegin(fqn)
|
||||
adapters.classAdapterRegistry[fqn].serialize(self, obj)
|
||||
return
|
||||
else:
|
||||
self.protocol.writeStructBegin(fqn)
|
||||
methods = inspect.getmembers(obj, inspect.ismethod)
|
||||
fid = 1
|
||||
for m in methods:
|
||||
methodName = m[0]
|
||||
if methodName.startswith('get'):
|
||||
fieldname = methodName[3].lower() + methodName[4:]
|
||||
val = m[1]()
|
||||
ft = self._lookupType(val)
|
||||
if ft == TType.STRUCT:
|
||||
fc = val.__module__[DS_LEN:]
|
||||
self._serializeField(fieldname, ft, fid, val)
|
||||
else:
|
||||
self._serializeField(fieldname, ft, fid, val)
|
||||
fid += 1
|
||||
self.protocol.writeFieldStop()
|
||||
|
||||
self.protocol.writeStructEnd()
|
||||
else:
|
||||
# basic types
|
||||
self.protocol.writeStructBegin(str(tt))
|
||||
self._serializeType(obj, tt)
|
||||
self.protocol.writeStructEnd()
|
||||
|
||||
def _serializeField(self, fieldName, fieldType, fieldId, fieldValue):
|
||||
self.protocol.writeFieldBegin(fieldName, fieldType, fieldId)
|
||||
self._serializeType(fieldValue, fieldType)
|
||||
self.protocol.writeFieldEnd()
|
||||
|
||||
def _serializeType(self, fieldValue, fieldType):
|
||||
if fieldType in self.typeSerializationMethod:
|
||||
return self.typeSerializationMethod[fieldType](fieldValue)
|
||||
else:
|
||||
raise dynamicserialize.SerializationException(
|
||||
"Unsupported type value " + str(fieldType))
|
||||
|
||||
def _serializeArray(self, obj):
|
||||
size = len(obj)
|
||||
if size:
|
||||
if type(obj) is numpy.ndarray:
|
||||
t = pythonToThriftMap[obj.dtype.type]
|
||||
size = obj.size
|
||||
else:
|
||||
t = self._lookupType(obj[0])
|
||||
else:
|
||||
t = TType.STRUCT
|
||||
self.protocol.writeListBegin(t, size)
|
||||
if t == TType.STRING:
|
||||
if type(obj) is numpy.ndarray:
|
||||
if len(obj.shape) == 1:
|
||||
for x in obj:
|
||||
s = str(x).strip()
|
||||
self.typeSerializationMethod[t](s)
|
||||
else:
|
||||
for x in obj:
|
||||
for y in x:
|
||||
s = str(y).strip()
|
||||
self.typeSerializationMethod[t](s)
|
||||
else:
|
||||
for x in obj:
|
||||
s = str(x)
|
||||
self.typeSerializationMethod[t](s)
|
||||
elif t not in primitiveSupport:
|
||||
for x in obj:
|
||||
self.typeSerializationMethod[t](x)
|
||||
else:
|
||||
self.listSerializationMethod[t](obj)
|
||||
self.protocol.writeListEnd()
|
||||
|
||||
def _serializeMap(self, obj):
|
||||
size = len(obj)
|
||||
self.protocol.writeMapBegin(TType.VOID, TType.VOID, size)
|
||||
for k in obj.keys():
|
||||
self.typeSerializationMethod[TType.STRUCT](k)
|
||||
self.typeSerializationMethod[TType.STRUCT](obj[k])
|
||||
self.protocol.writeMapEnd()
|
||||
|
||||
def _serializeSet(self, obj):
|
||||
size = len(obj)
|
||||
self.protocol.writeSetBegin(TType.VOID, size)
|
||||
for x in obj:
|
||||
self.typeSerializationMethod[TType.STRUCT](x)
|
||||
self.protocol.writeSetEnd()
|
||||
|
||||
def writeMessageStart(self, name):
|
||||
self.protocol.writeMessageBegin(name, TType.VOID, 0)
|
||||
|
||||
def writeMessageEnd(self):
|
||||
self.protocol.writeMessageEnd()
|
||||
|
||||
def readBool(self):
|
||||
return self.protocol.readBool()
|
||||
|
||||
def writeBool(self, b):
|
||||
self.protocol.writeBool(b)
|
||||
|
||||
def readByte(self):
|
||||
return self.protocol.readByte()
|
||||
|
||||
def writeByte(self, b):
|
||||
self.protocol.writeByte(b)
|
||||
|
||||
def readDouble(self):
|
||||
return self.protocol.readDouble()
|
||||
|
||||
def writeDouble(self, d):
|
||||
self.protocol.writeDouble(d)
|
||||
|
||||
def readFloat(self):
|
||||
return self.protocol.readFloat()
|
||||
|
||||
def writeFloat(self, f):
|
||||
self.protocol.writeFloat(f)
|
||||
|
||||
def readI16(self):
|
||||
return self.protocol.readI16()
|
||||
|
||||
def writeI16(self, i):
|
||||
self.protocol.writeI16(i)
|
||||
|
||||
def readI32(self):
|
||||
return self.protocol.readI32()
|
||||
|
||||
def writeI32(self, i):
|
||||
self.protocol.writeI32(i)
|
||||
|
||||
def readI64(self):
|
||||
return self.protocol.readI64()
|
||||
|
||||
def writeI64(self, i):
|
||||
self.protocol.writeI64(i)
|
||||
|
||||
def readString(self):
|
||||
return self.protocol.readString()
|
||||
|
||||
def writeString(self, s):
|
||||
self.protocol.writeString(s)
|
||||
|
||||
def readBinary(self):
|
||||
numBytes = self.protocol.readI32()
|
||||
return self.protocol.readI8List(numBytes)
|
||||
|
||||
def readFloatArray(self):
|
||||
size = self.protocol.readI32()
|
||||
return self.protocol.readF32List(size)
|
||||
|
||||
def writeFloatArray(self, floats):
|
||||
self.protocol.writeI32(len(floats))
|
||||
self.protocol.writeF32List(floats)
|
||||
|
||||
def readObject(self):
|
||||
return self.deserializeMessage()
|
||||
|
||||
def writeObject(self, obj):
|
||||
self.serializeMessage(obj)
|
|
@ -1,58 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# TODO
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 08/20/10 njensen Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
__all__ = [
|
||||
]
|
||||
|
||||
import dstypes, adapters
|
||||
import DynamicSerializationManager
|
||||
|
||||
class SerializationException(Exception):
|
||||
|
||||
def __init__(self, message=None):
|
||||
self.message = message
|
||||
|
||||
def __str__(self):
|
||||
if self.message:
|
||||
return self.message
|
||||
else:
|
||||
return ""
|
||||
|
||||
def serialize(obj):
|
||||
dsm = DynamicSerializationManager.DynamicSerializationManager()
|
||||
return dsm.serializeObject(obj)
|
||||
|
||||
def deserialize(bytes):
|
||||
dsm = DynamicSerializationManager.DynamicSerializationManager()
|
||||
return dsm.deserializeBytes(bytes)
|
|
@ -1,46 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for java.nio.ByteBuffer
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 08/03/11 dgilling Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
ClassAdapter = ['java.nio.ByteBuffer', 'java.nio.HeapByteBuffer']
|
||||
|
||||
|
||||
def serialize(context, set):
|
||||
raise NotImplementedError("Serialization of ByteBuffers is not supported.")
|
||||
|
||||
def deserialize(context):
|
||||
byteBuf = context.readBinary()
|
||||
return byteBuf
|
||||
|
||||
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for java.util.Calendar
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 09/29/10 wldougher Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
from dynamicserialize.dstypes.java.util import Calendar
|
||||
|
||||
ClassAdapter = 'java.util.Calendar'
|
||||
|
||||
def serialize(context, calendar):
|
||||
calTiM = calendar.getTimeInMillis()
|
||||
context.writeI64(calTiM)
|
||||
|
||||
def deserialize(context):
|
||||
result = Calendar()
|
||||
result.setTimeInMillis(context.readI64())
|
||||
return result
|
|
@ -1,50 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for com.vividsolutions.jts.geom.Coordinate
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 01/20/11 dgilling Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
from dynamicserialize.dstypes.com.vividsolutions.jts.geom import Coordinate
|
||||
|
||||
ClassAdapter = 'com.vividsolutions.jts.geom.Coordinate'
|
||||
|
||||
def serialize(context, coordinate):
|
||||
context.writeDouble(coordinate.getX())
|
||||
context.writeDouble(coordinate.getY())
|
||||
|
||||
def deserialize(context):
|
||||
x = context.readDouble()
|
||||
y = context.readDouble()
|
||||
coord = Coordinate()
|
||||
coord.setX(x)
|
||||
coord.setY(y)
|
||||
return coord
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for java.util.Date
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 12/06/10 dgilling Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
from dynamicserialize.dstypes.java.util import Date
|
||||
|
||||
ClassAdapter = 'java.util.Date'
|
||||
|
||||
def serialize(context, date):
|
||||
context.writeI64(date.getTime())
|
||||
|
||||
def deserialize(context):
|
||||
result = Date()
|
||||
result.setTime(context.readI64())
|
||||
return result
|
|
@ -1,57 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for java.util.EnumSet
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 07/28/11 dgilling Initial Creation.
|
||||
# 12/02/13 2537 bsteffen Serialize empty enum sets.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
|
||||
|
||||
from dynamicserialize.dstypes.java.util import EnumSet
|
||||
|
||||
ClassAdapter = ['java.util.EnumSet', 'java.util.RegularEnumSet']
|
||||
|
||||
|
||||
def serialize(context, set):
|
||||
setSize = len(set)
|
||||
context.writeI32(setSize)
|
||||
context.writeString(set.getEnumClass())
|
||||
for val in set:
|
||||
context.writeString(val)
|
||||
|
||||
|
||||
def deserialize(context):
|
||||
setSize = context.readI32()
|
||||
enumClassName = context.readString()
|
||||
valList = []
|
||||
for i in xrange(setSize):
|
||||
valList.append(context.readString())
|
||||
return EnumSet(enumClassName, valList)
|
|
@ -1,46 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for java.nio.FloatBuffer
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 08/01/11 dgilling Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
ClassAdapter = ['java.nio.FloatBuffer', 'java.nio.HeapFloatBuffer']
|
||||
|
||||
|
||||
def serialize(context, set):
|
||||
raise NotImplementedError("Serialization of FloatBuffers is not supported.")
|
||||
|
||||
def deserialize(context):
|
||||
floatBuf = context.readFloatArray()
|
||||
return floatBuf
|
||||
|
||||
|
||||
|
|
@ -1,56 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for com.vividsolutions.jts.geom.Polygon
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 01/20/11 dgilling Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
# TODO: Implement serialization/make deserialization useful.
|
||||
# Deserialization was simply implemented to allow GridLocation objects to be
|
||||
# passed through thrift, but the resulting Geometry object will not be transformed into
|
||||
# useful data; the base byte array is passed to a worthless Geometry class.
|
||||
|
||||
from dynamicserialize.dstypes.com.vividsolutions.jts.geom import Geometry
|
||||
|
||||
# NOTE: At the moment, EDEX serializes Polygon, MultiPolygons, Points, and
|
||||
# Geometrys with the tag of the base class Geometry. Java's serialization
|
||||
# adapter is smarter and can determine the exact object by reading the binary
|
||||
# data. This adapter doesn't need this _yet_, so it has not been implemented.
|
||||
ClassAdapter = 'com.vividsolutions.jts.geom.Geometry'
|
||||
|
||||
def serialize(context, coordinate):
|
||||
raise dynamicserialize.SerializationException('Not implemented yet')
|
||||
|
||||
def deserialize(context):
|
||||
data = context.readBinary()
|
||||
geom = Geometry()
|
||||
geom.setBinaryData(data)
|
||||
return geom
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for java.util.Calendar
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 09/29/10 wldougher Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
from dynamicserialize.dstypes.java.util import GregorianCalendar
|
||||
|
||||
ClassAdapter = 'java.util.GregorianCalendar'
|
||||
|
||||
def serialize(context, calendar):
|
||||
calTiM = calendar.getTimeInMillis()
|
||||
context.writeI64(calTiM)
|
||||
|
||||
def deserialize(context):
|
||||
result = GregorianCalendar()
|
||||
result.setTimeInMillis(context.readI64())
|
||||
return result
|
|
@ -1,51 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for com.vividsolutions.jts.geom.Envelope
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 05/29/13 2023 dgilling Initial Creation.
|
||||
#
|
||||
#
|
||||
|
||||
from dynamicserialize.dstypes.com.vividsolutions.jts.geom import Envelope
|
||||
|
||||
ClassAdapter = 'com.vividsolutions.jts.geom.Envelope'
|
||||
|
||||
def serialize(context, envelope):
|
||||
context.writeDouble(envelope.getMinX())
|
||||
context.writeDouble(envelope.getMaxX())
|
||||
context.writeDouble(envelope.getMinY())
|
||||
context.writeDouble(envelope.getMaxY())
|
||||
|
||||
def deserialize(context):
|
||||
env = Envelope()
|
||||
env.setMinX(context.readDouble())
|
||||
env.setMaxX(context.readDouble())
|
||||
env.setMinY(context.readDouble())
|
||||
env.setMaxY(context.readDouble())
|
||||
return env
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for java.awt.Point
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 08/31/10 njensen Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
from dynamicserialize.dstypes.java.awt import Point
|
||||
|
||||
ClassAdapter = 'java.awt.Point'
|
||||
|
||||
def serialize(context, point):
|
||||
context.writeI32(point.getX())
|
||||
context.writeI32(point.getY())
|
||||
|
||||
def deserialize(context):
|
||||
x = context.readI32()
|
||||
y = context.readI32()
|
||||
point = Point()
|
||||
point.setX(x)
|
||||
point.setY(y)
|
||||
return point
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for java.lang.StackTraceElement[]
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 09/21/10 njensen Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
import dynamicserialize
|
||||
from dynamicserialize.dstypes.java.lang import StackTraceElement
|
||||
|
||||
ClassAdapter = 'java.lang.StackTraceElement'
|
||||
|
||||
|
||||
def serialize(context, obj):
|
||||
raise dynamicserialize.SerializationException('Not implemented yet')
|
||||
|
||||
def deserialize(context):
|
||||
result = StackTraceElement()
|
||||
result.setDeclaringClass(context.readString())
|
||||
result.setMethodName(context.readString())
|
||||
result.setFileName(context.readString())
|
||||
result.setLineNumber(context.readI32())
|
||||
return result
|
||||
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# Adapter for java.sql.Timestamp
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 06/30/11 dgilling Initial Creation.
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
from dynamicserialize.dstypes.java.sql import Timestamp
|
||||
|
||||
ClassAdapter = 'java.sql.Timestamp'
|
||||
|
||||
def serialize(context, timestamp):
|
||||
context.writeI64(timestamp.getTime())
|
||||
|
||||
def deserialize(context):
|
||||
result = Timestamp(context.readI64())
|
||||
return result
|
|
@ -1,111 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
|
||||
#
|
||||
# __init__.py for Dynamic Serialize adapters.
|
||||
#
|
||||
# Plugins can contribute to dynamicserialize.adapters by either including their
|
||||
# classes directly in pythonPackages/dynamicserialize/adapters/ within their
|
||||
# plugin. The plugin's adapter will automatically be added to __all__ at runtime
|
||||
# and registered.
|
||||
# Plugins should not include a custom __init__.py in
|
||||
# pythonPackages/dynamicserialize/adapters/ because it will overwrite this file.
|
||||
# If custom package initialization is needed, a subpackage should be created
|
||||
# with an __init__.py that includes the following:
|
||||
#
|
||||
# __all__ = ['CustomAdapter1', 'CustomAdapter2']
|
||||
# from dynamicserialize.adapters import registerAdapters
|
||||
# registerAdapters(__name__, __all__)
|
||||
#
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 08/31/10 njensen Initial Creation.
|
||||
# 03/20/13 #1774 randerso Added TimeConstraintsAdapter
|
||||
# 04/22/13 #1949 rjpeter Added LockTableAdapter
|
||||
# 02/06/14 #2672 bsteffen Added JTSEnvelopeAdapter
|
||||
# 06/22/2015 #4573 randerso Added JobProgressAdapter
|
||||
# 09/21/2015 #4486 rjpeter Added FormattedDateAdapter
|
||||
# 06/23/2016 #5696 rjpeter Added CommutativeTimestampAdapter
|
||||
# 10/17/2016 #5919 njensen Added GeomDataRespAdapter
|
||||
# 01/09/2017 #5997 nabowle Allow contribution from plugins.
|
||||
#
|
||||
|
||||
__all__ = [
|
||||
'PointAdapter',
|
||||
'StackTraceElementAdapter',
|
||||
'CalendarAdapter',
|
||||
'GregorianCalendarAdapter',
|
||||
'DateAdapter',
|
||||
'GeometryTypeAdapter',
|
||||
'CoordAdapter',
|
||||
'TimestampAdapter',
|
||||
'EnumSetAdapter',
|
||||
'FloatBufferAdapter',
|
||||
'ByteBufferAdapter',
|
||||
'JTSEnvelopeAdapter'
|
||||
]
|
||||
|
||||
classAdapterRegistry = {}
|
||||
|
||||
|
||||
def getAdapterRegistry():
|
||||
import pkgutil
|
||||
|
||||
discoveredPackages = []
|
||||
# allow other plugins to contribute to adapters by dropping their adapter or
|
||||
# package into the dynamicserialize.adapters package
|
||||
for _, modname, ispkg in pkgutil.iter_modules(__path__):
|
||||
if ispkg:
|
||||
discoveredPackages.append(modname)
|
||||
else:
|
||||
if modname not in __all__:
|
||||
__all__.append(modname)
|
||||
|
||||
registerAdapters(__name__, __all__)
|
||||
|
||||
for pkg in discoveredPackages:
|
||||
__import__(__name__ + '.' + pkg)
|
||||
|
||||
|
||||
def registerAdapters(package, modules):
|
||||
import sys
|
||||
if not package.endswith('.'):
|
||||
package += '.'
|
||||
for x in modules:
|
||||
exec 'import ' + package + x
|
||||
m = sys.modules[package + x]
|
||||
d = m.__dict__
|
||||
if d.has_key('ClassAdapter'):
|
||||
if isinstance(m.ClassAdapter, list):
|
||||
for clz in m.ClassAdapter:
|
||||
classAdapterRegistry[clz] = m
|
||||
else:
|
||||
clzName = m.ClassAdapter
|
||||
classAdapterRegistry[clzName] = m
|
||||
else:
|
||||
raise LookupError('Adapter class ' + x + ' has no ClassAdapter field ' +
|
||||
'and cannot be registered.')
|
||||
|
||||
|
||||
getAdapterRegistry()
|
|
@ -1,29 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'com',
|
||||
'gov',
|
||||
'java'
|
||||
]
|
||||
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'raytheon',
|
||||
'vividsolutions'
|
||||
]
|
||||
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'uf'
|
||||
]
|
||||
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'common'
|
||||
]
|
||||
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'dataplugin'
|
||||
]
|
||||
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'events'
|
||||
]
|
||||
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'hazards'
|
||||
]
|
||||
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'requests'
|
||||
]
|
||||
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Oct 08, 2014 reblum Generated
|
||||
|
||||
class RegionLookupRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.region = None
|
||||
self.site = None
|
||||
|
||||
def getRegion(self):
|
||||
return self.region
|
||||
|
||||
def setRegion(self, region):
|
||||
self.region = region
|
||||
|
||||
def getSite(self):
|
||||
return self.site
|
||||
|
||||
def setSite(self, site):
|
||||
self.site = site
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'RegionLookupRequest'
|
||||
]
|
||||
|
||||
from RegionLookupRequest import RegionLookupRequest
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'jts'
|
||||
]
|
||||
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'geom'
|
||||
]
|
||||
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
|
||||
class Coordinate(object):
|
||||
|
||||
def __init__(self, x=None, y=None):
|
||||
self.x = x
|
||||
self.y = y
|
||||
|
||||
def getX(self):
|
||||
return self.x
|
||||
|
||||
def getY(self):
|
||||
return self.y
|
||||
|
||||
def setX(self, x):
|
||||
self.x = x
|
||||
|
||||
def setY(self, y):
|
||||
self.y = y
|
||||
|
||||
def __str__(self):
|
||||
return str((self.x, self.y))
|
||||
|
||||
def __repr__(self):
|
||||
return self.__str__()
|
||||
|
|
@ -1,68 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# This class is a dummy implementation of the
|
||||
# com.vividsolutions.jts.geom.Envelope class. It was simply created to allow
|
||||
# serialization/deserialization of IDataRequest objects from the Data Access
|
||||
# Framework. This should be re-implemented if useful work needs to be
|
||||
# performed against serialized Envelope objects.
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# 05/29/13 2023 dgilling Initial Creation.
|
||||
#
|
||||
#
|
||||
|
||||
class Envelope(object):
|
||||
|
||||
def __init__(self, env=None):
|
||||
self.maxx = -1.0
|
||||
self.maxy = -1.0
|
||||
self.minx = 0.0
|
||||
self.miny = 0.0
|
||||
if env is not None:
|
||||
(self.minx, self.miny, self.maxx, self.maxy) = env.bounds
|
||||
|
||||
def getMaxX(self):
|
||||
return self.maxx
|
||||
|
||||
def getMaxY(self):
|
||||
return self.maxy
|
||||
|
||||
def getMinX(self):
|
||||
return self.minx
|
||||
|
||||
def getMinY(self):
|
||||
return self.miny
|
||||
|
||||
def setMaxX(self, value):
|
||||
self.maxx = value
|
||||
|
||||
def setMaxY(self, value):
|
||||
self.maxy = value
|
||||
|
||||
def setMinX(self, value):
|
||||
self.minx = value
|
||||
|
||||
def setMinY(self, value):
|
||||
self.miny = value
|
||||
|
|
@ -1,37 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# This class is a dummy implementation of the
|
||||
# com.vividsolutions.jts.geom.Geometry class. It was simply created to allow
|
||||
# serialization/deserialization of GridLocation objects. This should be
|
||||
# reimplemented if useful work needs to be performed against serialized
|
||||
# Geometry objects.
|
||||
|
||||
class Geometry(object):
|
||||
|
||||
def __init__(self):
|
||||
self.binaryData = None
|
||||
|
||||
def getBinaryData(self):
|
||||
return self.binaryData
|
||||
|
||||
def setBinaryData(self, data):
|
||||
self.binaryData = data
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
##
|
||||
# This software was developed and / or modified by Raytheon Company,
|
||||
# pursuant to Contract DG133W-05-CQ-1067 with the US Government.
|
||||
#
|
||||
# U.S. EXPORT CONTROLLED TECHNICAL DATA
|
||||
# This software product contains export-restricted data whose
|
||||
# export/transfer/disclosure is restricted by U.S. law. Dissemination
|
||||
# to non-U.S. persons whether in the United States or abroad requires
|
||||
# an export license or other authorization.
|
||||
#
|
||||
# Contractor Name: Raytheon Company
|
||||
# Contractor Address: 6825 Pine Street, Suite 340
|
||||
# Mail Stop B8
|
||||
# Omaha, NE 68106
|
||||
# 402.291.0100
|
||||
#
|
||||
# See the AWIPS II Master Rights File ("Master Rights File.pdf") for
|
||||
# further licensing information.
|
||||
##
|
||||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'Coordinate',
|
||||
'Envelope',
|
||||
'Geometry'
|
||||
]
|
||||
|
||||
from Coordinate import Coordinate
|
||||
from Envelope import Envelope
|
||||
from Geometry import Geometry
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'noaa'
|
||||
]
|
||||
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'nws'
|
||||
]
|
||||
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'ncep'
|
||||
]
|
||||
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'common'
|
||||
]
|
||||
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'dataplugin'
|
||||
]
|
||||
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'atcf',
|
||||
'gempak',
|
||||
'gpd',
|
||||
'pgen'
|
||||
]
|
||||
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'request'
|
||||
]
|
||||
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
|
||||
class RetrieveAtcfDeckRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.deckID = None
|
||||
|
||||
def getDeckID(self):
|
||||
return self.deckID
|
||||
|
||||
def setDeckID(self, deckID):
|
||||
self.deckID = deckID
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'RetrieveAtcfDeckRequest'
|
||||
]
|
||||
|
||||
from RetrieveAtcfDeckRequest import RetrieveAtcfDeckRequest
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'request'
|
||||
]
|
||||
|
||||
|
|
@ -1,69 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
class GetGridDataRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.vcoord = None
|
||||
self.level2 = None
|
||||
self.modelId = None
|
||||
self.parm = None
|
||||
self.level1 = None
|
||||
self.reftime = None
|
||||
self.pluginName = None
|
||||
self.fcstsec = None
|
||||
|
||||
def getVcoord(self):
|
||||
return self.vcoord
|
||||
|
||||
def setVcoord(self, vcoord):
|
||||
self.vcoord = vcoord
|
||||
|
||||
def getLevel2(self):
|
||||
return self.level2
|
||||
|
||||
def setLevel2(self, level2):
|
||||
self.level2 = level2
|
||||
|
||||
def getModelId(self):
|
||||
return self.modelId
|
||||
|
||||
def setModelId(self, modelId):
|
||||
self.modelId = modelId
|
||||
|
||||
def getParm(self):
|
||||
return self.parm
|
||||
|
||||
def setParm(self, parm):
|
||||
self.parm = parm
|
||||
|
||||
def getLevel1(self):
|
||||
return self.level1
|
||||
|
||||
def setLevel1(self, level1):
|
||||
self.level1 = level1
|
||||
|
||||
def getReftime(self):
|
||||
return self.reftime
|
||||
|
||||
def setReftime(self, reftime):
|
||||
self.reftime = reftime
|
||||
|
||||
def getPluginName(self):
|
||||
return self.pluginName
|
||||
|
||||
def setPluginName(self, pluginName):
|
||||
self.pluginName = pluginName
|
||||
|
||||
def getFcstsec(self):
|
||||
return self.fcstsec
|
||||
|
||||
def setFcstsec(self, fcstsec):
|
||||
self.fcstsec = fcstsec
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
class GetGridInfoRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.modelId = None
|
||||
self.reftime = None
|
||||
self.pluginName = None
|
||||
self.fcstsec = None
|
||||
|
||||
def getModelId(self):
|
||||
return self.modelId
|
||||
|
||||
def setModelId(self, modelId):
|
||||
self.modelId = modelId
|
||||
|
||||
def getReftime(self):
|
||||
return self.reftime
|
||||
|
||||
def setReftime(self, reftime):
|
||||
self.reftime = reftime
|
||||
|
||||
def getPluginName(self):
|
||||
return self.pluginName
|
||||
|
||||
def setPluginName(self, pluginName):
|
||||
self.pluginName = pluginName
|
||||
|
||||
def getFcstsec(self):
|
||||
return self.fcstsec
|
||||
|
||||
def setFcstsec(self, fcstsec):
|
||||
self.fcstsec = fcstsec
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
class GetGridNavRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.modelId = None
|
||||
self.pluginName = None
|
||||
|
||||
def getModelId(self):
|
||||
return self.modelId
|
||||
|
||||
def setModelId(self, modelId):
|
||||
self.modelId = modelId
|
||||
|
||||
def getPluginName(self):
|
||||
return self.pluginName
|
||||
|
||||
def setPluginName(self, pluginName):
|
||||
self.pluginName = pluginName
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
class GetStationsRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.pluginName = None
|
||||
|
||||
def getPluginName(self):
|
||||
return self.pluginName
|
||||
|
||||
def setPluginName(self, pluginName):
|
||||
self.pluginName = pluginName
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
class GetTimesRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.pluginName = None
|
||||
self.timeField = None
|
||||
|
||||
def getPluginName(self):
|
||||
return self.pluginName
|
||||
|
||||
def setPluginName(self, pluginName):
|
||||
self.pluginName = pluginName
|
||||
|
||||
def getTimeField(self):
|
||||
return self.timeField
|
||||
|
||||
def setTimeField(self, timeField):
|
||||
self.timeField = timeField
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
class GetTimesResponse(object):
|
||||
|
||||
def __init__(self):
|
||||
self.times = None
|
||||
|
||||
def getTimes(self):
|
||||
return self.times
|
||||
|
||||
def setTimes(self, times):
|
||||
self.times = times
|
||||
|
|
@ -1,64 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
import numpy
|
||||
|
||||
class Station(object):
|
||||
|
||||
def __init__(self):
|
||||
self.elevation = None
|
||||
self.state = None
|
||||
self.stationId = None
|
||||
self.longitude = None
|
||||
self.latitude = None
|
||||
self.wmoIndex = None
|
||||
self.country = None
|
||||
|
||||
def getElevation(self):
|
||||
return self.elevation
|
||||
|
||||
def setElevation(self, elevation):
|
||||
self.elevation = elevation
|
||||
|
||||
def getState(self):
|
||||
return self.state
|
||||
|
||||
def setState(self, state):
|
||||
self.state = state
|
||||
|
||||
def getStationId(self):
|
||||
return self.stationId
|
||||
|
||||
def setStationId(self, stationId):
|
||||
self.stationId = stationId
|
||||
|
||||
def getLongitude(self):
|
||||
return self.longitude
|
||||
|
||||
def setLongitude(self, longitude):
|
||||
self.longitude = numpy.float64(longitude)
|
||||
|
||||
def getLatitude(self):
|
||||
return self.latitude
|
||||
|
||||
def setLatitude(self, latitude):
|
||||
self.latitude = numpy.float64(latitude)
|
||||
|
||||
def getWmoIndex(self):
|
||||
return self.wmoIndex
|
||||
|
||||
def setWmoIndex(self, wmoIndex):
|
||||
self.wmoIndex = wmoIndex
|
||||
|
||||
def getCountry(self):
|
||||
return self.country
|
||||
|
||||
def setCountry(self, country):
|
||||
self.country = country
|
||||
|
|
@ -1,48 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
class StationDataRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.refTime = None
|
||||
self.pluginName = None
|
||||
self.parmList = None
|
||||
self.stationId = None
|
||||
self.partNumber = None
|
||||
|
||||
def getRefTime(self):
|
||||
return self.refTime
|
||||
|
||||
def setRefTime(self, refTime):
|
||||
self.refTime = refTime
|
||||
|
||||
def getPluginName(self):
|
||||
return self.pluginName
|
||||
|
||||
def setPluginName(self, pluginName):
|
||||
self.pluginName = pluginName
|
||||
|
||||
def getParmList(self):
|
||||
return self.parmList
|
||||
|
||||
def setParmList(self, parmList):
|
||||
self.parmList = parmList
|
||||
|
||||
def getStationId(self):
|
||||
return self.stationId
|
||||
|
||||
def setStationId(self, stationId):
|
||||
self.stationId = stationId
|
||||
|
||||
def getPartNumber(self):
|
||||
return self.partNumber
|
||||
|
||||
def setPartNumber(self, partNumber):
|
||||
self.partNumber = partNumber
|
||||
|
|
@ -1,48 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
class SurfaceDataRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.refTime = None
|
||||
self.pluginName = None
|
||||
self.parmList = None
|
||||
self.stationId = None
|
||||
self.partNumber = None
|
||||
|
||||
def getRefTime(self):
|
||||
return self.refTime
|
||||
|
||||
def setRefTime(self, refTime):
|
||||
self.refTime = refTime
|
||||
|
||||
def getPluginName(self):
|
||||
return self.pluginName
|
||||
|
||||
def setPluginName(self, pluginName):
|
||||
self.pluginName = pluginName
|
||||
|
||||
def getParmList(self):
|
||||
return self.parmList
|
||||
|
||||
def setParmList(self, parmList):
|
||||
self.parmList = parmList
|
||||
|
||||
def getStationId(self):
|
||||
return self.stationId
|
||||
|
||||
def setStationId(self, stationId):
|
||||
self.stationId = stationId
|
||||
|
||||
def getPartNumber(self):
|
||||
return self.partNumber
|
||||
|
||||
def setPartNumber(self, partNumber):
|
||||
self.partNumber = partNumber
|
||||
|
|
@ -1,48 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
#
|
||||
# SOFTWARE HISTORY
|
||||
#
|
||||
# Date Ticket# Engineer Description
|
||||
# ------------ ---------- ----------- --------------------------
|
||||
# Sep 16, 2016 pmoyer Generated
|
||||
|
||||
class UpperAirDataRequest(object):
|
||||
|
||||
def __init__(self):
|
||||
self.refTime = None
|
||||
self.pluginName = None
|
||||
self.parmList = None
|
||||
self.stationId = None
|
||||
self.partNumber = None
|
||||
|
||||
def getRefTime(self):
|
||||
return self.refTime
|
||||
|
||||
def setRefTime(self, refTime):
|
||||
self.refTime = refTime
|
||||
|
||||
def getPluginName(self):
|
||||
return self.pluginName
|
||||
|
||||
def setPluginName(self, pluginName):
|
||||
self.pluginName = pluginName
|
||||
|
||||
def getParmList(self):
|
||||
return self.parmList
|
||||
|
||||
def setParmList(self, parmList):
|
||||
self.parmList = parmList
|
||||
|
||||
def getStationId(self):
|
||||
return self.stationId
|
||||
|
||||
def setStationId(self, stationId):
|
||||
self.stationId = stationId
|
||||
|
||||
def getPartNumber(self):
|
||||
return self.partNumber
|
||||
|
||||
def setPartNumber(self, partNumber):
|
||||
self.partNumber = partNumber
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'GetGridDataRequest',
|
||||
'GetGridInfoRequest',
|
||||
'GetGridNavRequest',
|
||||
'GetStationsRequest',
|
||||
'GetTimesRequest',
|
||||
'GetTimesResponse',
|
||||
'Station',
|
||||
'StationDataRequest',
|
||||
'SurfaceDataRequest',
|
||||
'UpperAirDataRequest'
|
||||
]
|
||||
|
||||
from GetGridDataRequest import GetGridDataRequest
|
||||
from GetGridInfoRequest import GetGridInfoRequest
|
||||
from GetGridNavRequest import GetGridNavRequest
|
||||
from GetStationsRequest import GetStationsRequest
|
||||
from GetTimesRequest import GetTimesRequest
|
||||
from GetTimesResponse import GetTimesResponse
|
||||
from Station import Station
|
||||
from StationDataRequest import StationDataRequest
|
||||
from SurfaceDataRequest import SurfaceDataRequest
|
||||
from UpperAirDataRequest import UpperAirDataRequest
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'query'
|
||||
]
|
|
@ -1,84 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
|
||||
class GenericPointDataReqMsg(object):
|
||||
|
||||
def __init__(self):
|
||||
self.reqType = None
|
||||
self.refTime = None
|
||||
self.productName = None
|
||||
self.stnId = None
|
||||
self.slat = None
|
||||
self.slon = None
|
||||
self.productVersion = None
|
||||
self.querySpecifiedProductVersion = False
|
||||
self.queryKey = None
|
||||
self.gpdDataString = None
|
||||
self.maxNumLevel = 1
|
||||
|
||||
def getReqType(self):
|
||||
return self.reqType
|
||||
|
||||
def setReqType(self, reqType):
|
||||
self.reqType = reqType
|
||||
|
||||
def getRefTime(self):
|
||||
return self.refTime
|
||||
|
||||
def setRefTime(self, refTime):
|
||||
self.refTime = refTime
|
||||
|
||||
def getProductName(self):
|
||||
return self.productName
|
||||
|
||||
def setProductName(self, productName):
|
||||
self.productName = productName
|
||||
|
||||
def getStnId(self):
|
||||
return self.stnId
|
||||
|
||||
def setStnId(self, stnId):
|
||||
self.stnId = stnId
|
||||
|
||||
def getSlat(self):
|
||||
return self.slat
|
||||
|
||||
def setSlat(self, slat):
|
||||
self.slat = slat
|
||||
|
||||
def getSlon(self):
|
||||
return self.slon
|
||||
|
||||
def setSlon(self, slon):
|
||||
self.slon = slon
|
||||
|
||||
def getMaxNumLevel(self):
|
||||
return self.maxNumLevel
|
||||
|
||||
def setMaxNumLevel(self, maxNumLevel):
|
||||
self.maxNumLevel = maxNumLevel
|
||||
|
||||
def getProductVersion(self):
|
||||
return self.productVersion
|
||||
|
||||
def setProductVersion(self, productVersion):
|
||||
self.productVersion = productVersion
|
||||
|
||||
def getQuerySpecifiedProductVersion(self):
|
||||
return self.querySpecifiedProductVersion
|
||||
|
||||
def setQuerySpecifiedProductVersion(self, querySpecifiedProductVersion):
|
||||
self.querySpecifiedProductVersion = querySpecifiedProductVersion
|
||||
|
||||
def getQueryKey(self):
|
||||
return self.queryKey
|
||||
|
||||
def setQueryKey(self, queryKey):
|
||||
self.queryKey = queryKey
|
||||
|
||||
def getGpdDataString(self):
|
||||
return self.gpdDataString
|
||||
|
||||
def setGpdDataString(self, gpdDataString):
|
||||
self.gpdDataString = gpdDataString
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
# File auto-generated by PythonFileGenerator
|
||||
|
||||
__all__ = [
|
||||
'GenericPointDataReqMsg'
|
||||
]
|
||||
|
||||
from GenericPointDataReqMsg import GenericPointDataReqMsg
|
|
@ -1,77 +0,0 @@
|
|||
|
||||
# File auto-generated against equivalent DynamicSerialize Java class
|
||||
|
||||
class ActivityInfo(object):
|
||||
|
||||
def __init__(self):
|
||||
self.activityName = None
|
||||
self.activityType = None
|
||||
self.activitySubtype = None
|
||||
self.activityLabel = None
|
||||
self.site = None
|
||||
self.desk = None
|
||||
self.forecaster = None
|
||||
self.refTime = None
|
||||
self.mode = None
|
||||
self.status = None
|
||||
|
||||
def getActivityName(self):
|
||||
return self.activityName
|
||||
|
||||
def setActivityName(self, activityName):
|
||||
self.activityName = activityName
|
||||
|
||||
def getActivityType(self):
|
||||
return self.activityType
|
||||
|
||||
def setActivityType(self, activityType):
|
||||
self.activityType = activityType
|
||||
|
||||
def getActivitySubtype(self):
|
||||
return self.activitySubtype
|
||||
|
||||
def setActivitySubtype(self, activitySubtype):
|
||||
self.activitySubtype = activitySubtype
|
||||
|
||||
def getActivityLabel(self):
|
||||
return self.activityLabel
|
||||
|
||||
def setActivityLabel(self, activityLabel):
|
||||
self.activityLabel = activityLabel
|
||||
|
||||
def getSite(self):
|
||||
return self.site
|
||||
|
||||
def setSite(self, site):
|
||||
self.site = site
|
||||
|
||||
def getDesk(self):
|
||||
return self.desk
|
||||
|
||||
def setDesk(self, desk):
|
||||
self.desk = desk
|
||||
|
||||
def getForecaster(self):
|
||||
return self.forecaster
|
||||
|
||||
def setForecaster(self, forecaster):
|
||||
self.forecaster = forecaster
|
||||
|
||||
def getRefTime(self):
|
||||
return self.refTime
|
||||
|
||||
def setRefTime(self, refTime):
|
||||
self.refTime = refTime
|
||||
|
||||
def getMode(self):
|
||||
return self.mode
|
||||
|
||||
def setMode(self, mode):
|
||||
self.mode = mode
|
||||
|
||||
def getStatus(self):
|
||||
return self.status
|
||||
|
||||
def setStatus(self, status):
|
||||
self.status = status
|
||||
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue