Exemplo n.º 1
0
 def execute(self):
     response = ArrayList()
     response.add(
         ResponseMessageGeneric(
             PluginFactory.getInstance().getPluginRecordClassName(
                 self.__plugin)))
     return response
Exemplo n.º 2
0
 def execute(self, aParm):
     try:
         name = self.gempakNames[aParm]
     except KeyError:
         print "Accessing a non-existent dictionary key"
         name = ''
     return (ResponseMessageGeneric(name))
Exemplo n.º 3
0
    def __makeResponse(self):
        from com.raytheon.edex.uengine.tasks.decode import FileIn
        from gov.noaa.nws.ncep.edex.uengine.output import GridOut
        response = ArrayList()
        size = self.queryResults.size()
        for i in range(size):
            currentQuery = self.queryResults.get(i)

            #
            # grid coverage
            #
            if self.pluginName == 'grib':
                gridNavInfo = GempakConvert.getGridNavigationContent(
                    currentQuery.getSpatialObject()).split(";")
            elif self.pluginName == 'ncgrib':
                gridNavInfo = GempakConvert.getNcgridNavigationContent(
                    currentQuery.getSpatialObject()).split(";")

            nx = gridNavInfo[1]
            ny = gridNavInfo[2]

            #
            # Call FileIn constructor
            #
            fileIn = FileIn(self.plugin, currentQuery)

            #
            # Call the execute method, getting back the data record
            #
            record = fileIn.execute()
            self.nxStr = "%s" % nx
            self.nyStr = "%s" % ny
            fileOut = GridOut(record.getDataObject(), self.format, self.nxStr,
                              self.nyStr)

            #
            # Execute method of FileOut class stores the data
            # in a file in uEngineProducts directory with the extension
            # contained in the string self.format
            #
            writeFile = fileOut.execute()

            #
            # Separate the file name from the complete path and store in content
            #
            content = (
                "%s" %
                writeFile).split("/")[len(("%s" % writeFile).split("/")) - 1]

            #
            #
            #
            import socket
            hostname = socket.gethostbyaddr(socket.gethostname())[2][0]
            #
            # Return content wrapped in a generic XML message
            #
            response.add(ResponseMessageGeneric(hostname + "|" + content))

        return response
Exemplo n.º 4
0
 def __makeResponse(self, aResponse):
     response = ArrayList()
     aResponse0 = "%s" % aResponse.get(0)
     print "aResponse=", aResponse
     print "aResponse0=", aResponse0
     response.add(ResponseMessageGeneric(aResponse0))
     return response
Exemplo n.º 5
0
 def makeNullResponse(self):
     nullStr = "Database Query returned no results"
     if self.returnText:
         return nullStr
     else:
         response = ArrayList()
         response.add(ResponseMessageGeneric(nullStr))
         return response
Exemplo n.º 6
0
 def makeResponse(self):
     from com.raytheon.uf.common.message.response import ResponseMessageGeneric
     count = self.queryResults.size()
     response = ArrayList()
     for i in range(count):
         currentQuery = self.queryResults.get(i)
         response.add(ResponseMessageGeneric(currentQuery))
     return response
Exemplo n.º 7
0
 def execute(self):
     result = self._pdq.execute()
     if result is None:
         errorResponse =  ResponseMessageError()
         errorResponse.setErrorMsg("Error retrieving QC data!")
         return errorResponse
     else:
         return ResponseMessageGeneric(result)
Exemplo n.º 8
0
    def execute(self):
        self.task.setWorkstationID(self.wsId)

        result = self.task.execute()
        payload = result.getPayload()
        messages = result.getMessages()
        notifications = result.getNotifications()
        response = ArrayList()

        if payload is not None:
            for i in range(payload.size()):
                response.add(ResponseMessageGeneric(payload.get(i)))

        for i in range(messages.size()):
            response.add(ResponseMessageGeneric(messages.get(i)))

        for i in range(notifications.size()):
            response.add(ResponseMessageGeneric(notifications.get(i)))

        return response
Exemplo n.º 9
0
 def execute(self):
     self.requestAllLevels()
     self._pdq.setParameters(MetarPointDataTransform.ALL_PARAMS_LIST)        
     self.queryResults = self._pdq.execute()
     if self.queryResults is None:
         response = ArrayList()
         return response
     else:
         records = MetarPointDataTransform.toMetarRecords(self.queryResults)
         size = len(records)
         response = ArrayList()
         for i in range(size):
             response.add(ResponseMessageGeneric(records[i]))
         return response
 def __makeResponse(self, ensArrayList):
     size = ensArrayList.size()
     ensList = []
     for i in range(size):
         ensList.append("%s" % ensArrayList.get(i))
     commonStart = self.__findCommonStart(ensList)
     #        print "commonStart= ", commonStart
     #        if self.perturbationNum == 0:
     #            ensTemplate = self.modelName + "_db_" + commonStart + "*_YYYYMMDDHHfFFF"
     #        else:
     ensTemplate = self.modelName + "_db_" + commonStart + "_YYYYMMDDHHfFFF"
     response = ArrayList()
     response.add(ResponseMessageGeneric(ensTemplate))
     return response
Exemplo n.º 11
0
 def execute(self):
     self.requestAllLevels()
     self._pdq.setParameters(ProfilerDataTransform.MAN_PARAMS_LIST)
     self.queryResults = self._pdq.execute()
     if self.queryResults is None:
         return self.makeNullResponse()
     else:
         records = ProfilerDataTransform.toProfilerRecords(
             self.queryResults)
         size = len(records)
         response = ArrayList()
         for i in range(size):
             response.add(ResponseMessageGeneric(records[i]))
         return response
Exemplo n.º 12
0
 def execute(self):
     print "FSSObsRequest.py"
     self.requestAllLevels()
     self._pdq.setParameters(FSSObsRecordTransform.FSSOBS_PARAMS_LIST)        
     self.queryResults = self._pdq.execute()
     if self.queryResults is None:
         self.makeNullResponse()
     else:
         print "performing transform"
         records = FSSObsRecordTransform.toFSSObsRecords(self.queryResults)
         size = len(records)
         response = ArrayList()
         for i in range(size):
             response.add(ResponseMessageGeneric(records[i]))
         return response
Exemplo n.º 13
0
    def __makeResponse(self):

        response = ArrayList()
        size = self.queryResults.size()
        for i in range(size):
            currentQuery = self.queryResults.get(i)
            
            content = GempakConvert.getSatHdrContent(currentQuery.getSpatialObject())
            content = content + ";" + currentQuery.getCreatingEntity() + ";" + currentQuery.getPhysicalElement()
            aDbTime = "%s" % currentQuery.getDataTime()
            aDattim = GempakConvert.dbtimeToSatDattim(aDbTime)
            content = content + ";" + aDattim          
            response.add(ResponseMessageGeneric(content))

        return response
Exemplo n.º 14
0
def runFromEngine():
    from java.util import ArrayList
    try:
        from com.raytheon.uf.common.message.response import ResponseMessageGeneric
    except:
        # older EDEX versions support before the class was moved
        from com.raytheon.edex.msg import ResponseMessageGeneric
    jlist = ArrayList()
    vals = runDiagnostics()
    for v in vals:
        r = ResponseMessageGeneric(v[0] + ": " + str(v[1]))
        jlist.add(r)
    return jlist
    
    
    
Exemplo n.º 15
0
    def __makeResponse(self):

        response = ArrayList()
        size = self.queryResults.size()
        for i in range(size):
            currentQuery = self.queryResults.get(i)
            
            content = GempakConvert.getMcidasHdrContent(currentQuery.getSpatialObject())
            
            content = content + ";" + "%s" % currentQuery.getSatelliteId() + \
                      ";" + "%s" % currentQuery.getImageTypeNumber() + \
                      ";" + "%s" % currentQuery.getCalType()
            aDbTime = "%s" % currentQuery.getDataTime()
            aDattim = GempakConvert.dbtimeToSatDattim(aDbTime)
            content = content + ";" + aDattim          
            response.add(ResponseMessageGeneric(content))

        return response
Exemplo n.º 16
0
    def __makeResponse(self):
        from com.raytheon.edex.uengine.tasks.decode import FileIn
        from com.raytheon.edex.uengine.tasks.output import FileOut
        from gov.noaa.nws.ncep.edex.uengine.tasks.radar import GempakDecodeRadarImage
        response = ArrayList()
        size = self.queryResults.size()
        for i in range(size):
            currentQuery = self.queryResults.get(i)
            #
            # Call FileIn constructor
            #
            fileIn = FileIn(self.plugin, currentQuery)
            records = fileIn.retrieveGroup()
            radarImage = GempakDecodeRadarImage(currentQuery, records)

            #
            # Call the execute method, getting back the data record
            #
            record = radarImage.execute()

            fileOut = FileOut(record, self.format)

            #
            # Execute method of FileOut class stores the data
            # in a file in uEngineProducts directory with the extension
            # contained in the string self.format
            #
            writeFile = fileOut.execute()

            #
            # Separate the file name from the complete path and store in content
            #
            content = (
                "%s" %
                writeFile).split("/")[len(("%s" % writeFile).split("/")) - 1]

            #
            # Return content wrapped in a generic XML message
            #
            response.add(ResponseMessageGeneric(content))

        return response
Exemplo n.º 17
0
 def makeResponse(self):
     response = ArrayList()
     returnString = ""
     queryRows = ArrayList()
     queryRows = self.queryResults.getRows()
     for qrow in queryRows:
         rowStr = "%s" % qrow
         if self.returnText:
             returnString = returnString + rowStr[1:-1]
             if self.isTextSeparated:
                 returnString = returnString + self.separator
         else:
             response.add(ResponseMessageGeneric(rowStr[1:-1]))
     if self.returnText:
         if self.isTextSeparated:
             return returnString[0:-1]
         else:
             return returnString
     else:
         return response
Exemplo n.º 18
0
    def makeResponse(self):
        convert = GempakConvert(self.pluginName, self.queryResults)
        convert2 = GempakConvert()
        convertSt = convert.getStrings()
        returnStr = ''

        for s in convertSt:
            retTime = convert2.dbtimeToDattim(s)
            #
            # add only unique times
            #
            if returnStr.find(retTime) == -1:
                returnStr = returnStr + retTime + '|'

        #
        # sort times before returning
        #
        if self.returnText:
            return "|".join(sorted(returnStr[0:-1].split("|")))
        else:
            return ResponseMessageGeneric("|".join(
                sorted(returnStr[0:-1].split("|"))))
Exemplo n.º 19
0
    def __makeResponse(self):
        from com.raytheon.edex.uengine.tasks.decode import FileIn
        response = ArrayList()
        size = self.queryResults.size()
        for i in range(size):
            currentQuery = self.queryResults.get(i)
            aLat = "%s" % currentQuery.getLatitude()
            aLon = "%s" % currentQuery.getLongitude()
            aProd = "%s" % currentQuery.getProductCode()
            aNx = "%s" % currentQuery.getNx()
            aNy = "%s" % currentQuery.getNy()
            aDbTime = "%s" % currentQuery.getDataTime()
            aDattim = GempakConvert.dbtimeToSatDattim(aDbTime)
            content = aLat + ";" + aLon + ";" + aProd + ";" + aNx + ";" + aNy + ";" + aDattim
            fileIn = FileIn(self.plugin, currentQuery)
            records = fileIn.retrieveGroup()
            convert = GempakConvert()
            thresholds = convert.getRadarThresholds(currentQuery, records)
            rpgIdDec = "10000"
            content = content + ";" + thresholds[0:-1] + ";" + rpgIdDec
            response.add(ResponseMessageGeneric(content))

        return response
Exemplo n.º 20
0
  def __makeResponse(self):
      from com.raytheon.edex.uengine.tasks.decode import FileIn
      response = ArrayList()
      size = self.queryResults.size()
      for i in range(size):
          currentQuery = self.queryResults.get(i)
          aLat = "%s" % currentQuery.getLatitude()
          aLon = "%s" % currentQuery.getLongitude()
          aProd = "%s" % currentQuery.getProductCode()
          aAngle = "%s" % currentQuery.getTrueElevationAngle()
          aNumBins = "%s" % currentQuery.getNumBins()
          aFormat = "%s" % currentQuery.getFormat()
          aDbTime = "%s" % currentQuery.getDataTime()
          aDattim = GempakConvert.dbtimeToSatDattim(aDbTime)
          content = aLat + ";" + aLon + ";" + aProd + ";" + aAngle + ";" + aNumBins + ";" + aFormat + ";" + aDattim
          fileIn = FileIn(self.plugin, currentQuery)
          records = fileIn.retrieveGroup()
          convert = GempakConvert();
          thresholds = convert.getRadarThresholds(currentQuery, records);
          rpgIdDec = currentQuery.getSpatialObject().getRpgIdDec()
          content =  content + ";"+ thresholds[0:-1] + ";" + rpgIdDec
          response.add(ResponseMessageGeneric(content))
 
      return response
Exemplo n.º 21
0
 def makeResponse(self):
     return ResponseMessageGeneric.wrap(self.queryResults)
Exemplo n.º 22
0
 def __makeResponse(self, cycles):
     retStr = "|".join(cycles)
     return ResponseMessageGeneric(retStr)
Exemplo n.º 23
0
 def __makeNullResponse(self,
                        aMessage="Database Query returned no results"):
     return ResponseMessageGeneric(aMessage)
Exemplo n.º 24
0
 def makeNullResponse(self):
     response = ArrayList()
     response.add(
         ResponseMessageGeneric("Database Query returned no results"))
     return response
Exemplo n.º 25
0
 def execute(self):
     dao = CoreDao(DaoConfig.forDatabase(self.__dbName))
     queryResults = dao.executeMappedSQLQuery(self.__query)
     response = ArrayList()
     response.add(ResponseMessageGeneric(queryResults))
     return response 
Exemplo n.º 26
0
    def __makeResponse(self):
        from gov.noaa.nws.ncep.edex.uengine.tasks.atcf import AtcfCyclone, AtcfTrack
        response = ArrayList()
        idNumberDict, timeIdTqDict = self.__getDictionaries()

        # traverse the time,cyclone ID - technique dictionary to obtain AtcfRecords and
        # construct AtcfCyclone objects
        for key, value in timeIdTqDict.items():
            currentTime = key[0]
            cycId = key[1]
            techList = value
            aBasin = idNumberDict[cycId][0]
            aCycloneNumb = idNumberDict[cycId][1]

            # create new AtcfCyclone object
            aCyclone = AtcfCyclone(cycId)
            for techniqueName in techList:
                bsResults = None
                # CARQ case
                if techniqueName == "CARQ":
                    # first we need to create track for the past
                    BaseRequest.BaseRequest.__init__(self, "atcf")
                    self.query.addParameter("dataTime", currentTime)
                    self.query.addParameter("basin", aBasin)
                    self.query.addParameter("cycloneNum", aCycloneNumb)
                    self.query.addParameter("technique", techniqueName)
                    self.query.addParameter("radWind", "34")
                    self.query.addParameter("fcstHour", "0", "<")
                    order = True
                    self.query.setSortBy("fcstHour", order)
                    bsResultsPast = self.query.execute()
                    bsResults = bsResultsPast

                    # second we need to create track for the future
                    BaseRequest.BaseRequest.__init__(self, "atcf")
                    timeRange = currentTime + "--" + self.__getTimePlus(
                        currentTime)
                    self.query.addParameter("dataTime", timeRange, "between")
                    self.query.addParameter("basin", aBasin)
                    self.query.addParameter("cycloneNum", aCycloneNumb)
                    self.query.addParameter("technique", techniqueName)
                    self.query.addParameter("radWind", "34")
                    self.query.addParameter("fcstHour", "0")
                    order = True
                    self.query.setSortBy("dataTime", order)
                    bsResultsFuture = self.query.execute()
                    count = 0
                    for ii in range(bsResultsFuture.size()):
                        recordToChange = bsResultsFuture.get(ii)
                        recordToChange.setFcstHour(ii * 6)
                        bsResults.add(recordToChange)
                # non-CARQ case
                else:
                    BaseRequest.BaseRequest.__init__(self, "atcf")
                    self.query.addParameter("dataTime", currentTime)
                    self.query.addParameter("basin", aBasin)
                    self.query.addParameter("cycloneNum", aCycloneNumb)
                    self.query.addParameter("technique", techniqueName)
                    order = True
                    self.query.setSortBy("fcstHour", order)
                    bsResults = self.query.execute()
                if bsResults is None or bsResults.size() == 0:
                    pass
                else:
                    # create new AtcfTrack object
                    aTrack = AtcfTrack(techniqueName, bsResults)

                    # add AtcfTrack object to AtcfCyclone
                    aCyclone.addTrack(aTrack)
                # add AtcfCyclone object to the response ArrayList
                response.add(ResponseMessageGeneric(aCyclone))
        return response
Exemplo n.º 27
0
 def __makeResponse(self):        
     response = ArrayList()
         
     response.add(ResponseMessageGeneric(self.queryResult))
     return response
Exemplo n.º 28
0
 def makeResponse(self):
     return ResponseMessageGeneric.wrap(self.queryResults)
Exemplo n.º 29
0
 def makeNullResponse(self):
     nullStr = "Database Query returned no results"
     if self.returnText:
         return nullStr
     else:
         return ResponseMessageGeneric(nullStr)
Exemplo n.º 30
0
 def __makeNullResponse(self, aMessage=None):
     return ResponseMessageGeneric(aMessage)
Exemplo n.º 31
0
    def __makeResponse(self):
        response = ArrayList()

        response.add(ResponseMessageGeneric(self.returnString))
        return response