Beispiel #1
0
 def init(self):
     self.getContext().addPropertyChangeListener(self) #ThrottleFrame change
     self.getContext().getCurrentThrottleFrame().getAddressPanel().addAddressListener(self) # change of throttle in Current frame
     self.addressPanel = self.getContext().getCurrentThrottleFrame().getAddressPanel()
     self.throttle = self.addressPanel.getThrottle() # the throttle
     self.roster = self.addressPanel.getRosterEntry() # roster entry if any
     self.speedAction =  SpeedAction()  #Speed increase thread
     self.speedAction.setThrottle( self.throttle )
     self.speedTimer = Timer(valueSpeedTimerRepeat, self.speedAction ) # Very important to use swing Timer object (see Swing and multithreading doc)
     self.speedTimer.setRepeats(True)
     self.label = JButton(ImageIcon(self.getFolder() + "/USBControl.png","USBThrottle")) #label
     self.label.addMouseListener(self.getMouseListeners()[0]) # In order to get the popupmenu on the button too
     self.add(self.label)
     self.model = jmri.jmrix.jinput.TreeModel.instance() # USB
     self.desiredController = None
     self.ctrlMenuItem = []
     self.USBDriver = None
     self.driver = None
     mi = JCheckBoxMenuItem ("None")
     self.getPopUpMenu().add( mi )
     mi.addItemListener( ControllerItemListener(None, self) )
     self.ctrlMenuItem.append(mi)
     for ctrl in self.model.controllers(): 
         mi = JCheckBoxMenuItem (ctrl.getName())
         self.getPopUpMenu().add( mi )
         mi.addItemListener( ControllerItemListener(ctrl, self) )
         self.ctrlMenuItem.append(mi)
     if ( len(self.ctrlMenuItem) == 0 ):
         print "No matching USB device found"
     else:
         self.ctrlMenuItem[0].setSelected(True)  # by default connect to the first one
     self.model.addPropertyChangeListener(self)
     self.lastTimeStopButton = Calendar.getInstance().getTimeInMillis()
     self.lastTimeCruiseButton = Calendar.getInstance().getTimeInMillis()
Beispiel #2
0
def setupjob(job, args):
    """
    Set up a job to run on telemetry date ranges using data from HBase

    Telemetry jobs expect two arguments, startdate and enddate, both in yyyymmdd format.
    """

    import java.text.SimpleDateFormat as SimpleDateFormat
    import java.util.Calendar as Calendar
    import com.mozilla.hadoop.hbase.mapreduce.MultiScanTableMapReduceUtil as MSTMRU
    import com.mozilla.util.Pair

    if len(args) != 2:
        raise Exception("Usage: <startdate-YYYYMMDD> <enddate-YYYYMMDD>")

    sdf = SimpleDateFormat(dateformat)
    startdate = Calendar.getInstance()
    startdate.setTime(sdf.parse(args[0]))
    enddate = Calendar.getInstance()
    enddate.setTime(sdf.parse(args[1]))

    columns = [com.mozilla.util.Pair('data', 'json')]
    scans = MSTMRU.generateBytePrefixScans(startdate, enddate, dateformat,
                                           columns, 500, False)
    MSTMRU.initMultiScanTableMapperJob(
        'telemetry',
        scans,
        None, None, None, job)

    # inform HadoopDriver about the columns we expect to receive
    job.getConfiguration().set("org.mozilla.jydoop.hbasecolumns", "data:json");
Beispiel #3
0
def to_java_calendar(value):
    if isinstance(value, Calendar):
        return value

    if isinstance(value, datetime.datetime):
        c = Calendar.getInstance()
        c.set(Calendar.YEAR, value.year)
        c.set(Calendar.MONTH, value.month - 1)
        c.set(Calendar.DAY_OF_MONTH, value.day)
        c.set(Calendar.HOUR_OF_DAY, value.hour)
        c.set(Calendar.MINUTE, value.minute)
        c.set(Calendar.SECOND, value.second)
        c.set(Calendar.MILLISECOND, value.microsecond / 1000)
        return c

    if isinstance(value, Date):
        c = Calendar.getInstance()
        c.time = value
        return c

    if isinstance(value, DateTime):
        return value.toGregorianCalendar()

    if isinstance(value, DateTimeType):
        return value.calendar

    raise Exception("Invalid conversion: " + str(type(value)))
 def onJava(self, e): 
  self.clockLabel.setText('running')
  self.started = Calendar.getInstance().getTimeInMillis();
  #print self.textfield1.getText()  
  #time.sleep(5)
  iters = toInt(self.textfield1.getText())
  java_smoother(iters)
  elapsed = Calendar.getInstance().getTimeInMillis() - self.started;
  self.clockLabel.setText( 'Java Elapsed: %.2f seconds' % ( float( elapsed ) / 1000.0 ) )
 def __setitem__(self, key, value):
     if key == 'vtecstr':
         self.atr.setVtecstr(value)
     elif key == 'etn':
         self.atr.setEtn(str(value))
     elif key == 'sig':
         self.atr.setSig(value)
     elif key == 'phen':
         self.atr.setPhen(value)
     elif key == 'segText':
         self.atr.setSegText(value)
     elif key == 'overviewText':
         self.atr.setOverviewText(value)
     elif key == 'phensig':
         self.atr.setPhensig(value)
     elif key == 'act':
         self.atr.setAct(value)
     elif key =='seg':
         self.atr.setSeg(value)
     elif key == 'startTime':
         start = Calendar.getInstance()
         start.setTimeInMillis(long(value * 1000))        
         self.atr.setStartTime(start)
     elif key == 'endTime':
         end = Calendar.getInstance()
         end.setTimeInMillis(long(value * 1000))        
         self.atr.setEndTime(end)
     elif key == 'purgeTime':
         purge = Calendar.getInstance()
         purge.setTimeInMillis(long(value * 1000))        
         self.atr.setPurgeTime(purge)
     elif key == 'issueTime':
         issue = Calendar.getInstance()
         issue.setTimeInMillis(long(value * 1000))        
         self.atr.setIssueTime(issue)        
     elif key == 'ufn':
         self.atr.setUfn(value)
     elif key == 'officeid':                
         self.atr.setOfficeid(value)
     elif key == 'state':        
         self.state = value
     elif key == 'xxxid':
         self.atr.setXxxid(value)
     elif key == 'pil':
         self.atr.setPil(value)
         self.pil = value
     elif key == 'productClass':        
         self.atr.setProductClass(value)
     elif key == 'id':                                
         self.id = value
     elif key == 'rawMessage':
         self.atr.setRawmessage(value)
     else:
         raise KeyError   
Beispiel #6
0
 def __activate__(self, context):
     self.auth = context["page"].authentication
     self.errorMsg = "" 
     self.request = context["request"]
     self.response = context["response"]
     self.fromDtTxt =  self.request.getParameter("from")
     self.toDtTxt = self.request.getParameter("to")
     self.reportName = self.request.getParameter("reportName")
     self.dateFormatter = SimpleDateFormat("d/M/yyyy")
     self.systemConfig = context["systemConfig"]
     if (self.fromDtTxt is None or self.toDtTxt is None):
         curCal = Calendar.getInstance()
         self.fromDtTxt =  "1/1/%s" % curCal.get(Calendar.YEAR)
         self.toDtTxt =  "%s/%s/%s" % (curCal.get(Calendar.DAY_OF_MONTH), curCal.get(Calendar.MONTH)+1,curCal.get(Calendar.YEAR))
     if (self.reportName is None):
         self.reportName = "Dashboard Report"
     if (self.auth.is_logged_in()):
         if (self.auth.is_admin()==True):
             self.action = self.request.getParameter("action") 
             if self.action == "export":
                 self.exportDashboard(context)
             else:
                 self.buildDashboard(context)
         else:
             self.errorMsg = "Requires Admin / Librarian / Reviewer access." 
     else:
         self.errorMsg = "Please login."
Beispiel #7
0
def lastDay(year,month) :
  C = Calendar.getInstance()
  C.set(Calendar.YEAR,year)
  C.set(Calendar.MONTH,month-1)
  C.set(Calendar.DATE,1)
  C.add(Calendar.MONTH,1)
  C.add(Calendar.DATE,-1)
  return C.get(Calendar.DATE)
Beispiel #8
0
def setupjob(job, args):
    """
    Set up a job to run on a date range of directories.

    Jobs expect two arguments, startdate and enddate, both in yyyy-MM-dd format.
    """

    import java.text.SimpleDateFormat as SimpleDateFormat
    import java.util.Date as Date
    import java.util.Calendar as Calendar
    import com.mozilla.util.DateUtil as DateUtil
    import com.mozilla.util.DateIterator as DateIterator
    import org.apache.hadoop.mapreduce.lib.input.FileInputFormat as FileInputFormat
    import org.apache.hadoop.mapreduce.lib.input.SequenceFileAsTextInputFormat as MyInputFormat

    if len(args) != 3:
        raise Exception("Usage: <testpilot_study> <startdate-YYYY-MM-DD> <enddate-YYYY-MM-DD>")

    # use to collect up each date in the given range
    class MyDateIterator(DateIterator):
       def __init__(self):
          self._list = []
       def get(self):
          return self._list
       def see(self, aTime):
          self._list.append(aTime)

    sdf = SimpleDateFormat(dateformat)
    study = args[0]
    startdate = Calendar.getInstance()
    startdate.setTime(sdf.parse(args[1]))

    enddate = Calendar.getInstance()
    enddate.setTime(sdf.parse(args[2]))

    dates = MyDateIterator()

    DateUtil.iterateByDay(startdate.getTimeInMillis(), enddate.getTimeInMillis(), dates)

    paths = []
    for d in dates.get():
       paths.append(pathformat % (study, sdf.format(Date(d))))

    job.setInputFormatClass(MyInputFormat)
    FileInputFormat.setInputPaths(job, ",".join(paths));
    job.getConfiguration().set("org.mozilla.jydoop.mappertype", "TEXT")
Beispiel #9
0
	def onTalk (self,npc,player) :
		htmltext = "<html><body>目前沒有執行任務,或條件不符。</body></html>" 
		st = player.getQuestState(qn) 
		if not st : return htmltext

		npcId = npc.getNpcId()
		cond = st.getInt("cond")
		if npcId == DAICHIR :
			if cond == 0 :
				reset = st.get("reset")
				remain = 0
				if reset and reset.isdigit() :
					remain = long(reset) - System.currentTimeMillis()
				if remain <= 0 :
					if player.getLevel() >= 80 :
						htmltext = "30537-01.htm"
					else :
						htmltext = "30537-00.htm"
						st.exitQuest(True)
				else :
					htmltext = "30537-06.htm"
			elif cond == 1 :
				if st.getQuestItemsCount(DISCHARGED_BEAD) >= 1 :
					htmltext = "30537-04a.htm"
				else :
					htmltext = "30537-04.htm"
			elif cond == 2 :
				htmltext = "30537-05.htm"
				st.giveItems(ADENA,255380)
				st.takeItems(DISCHARGED_BEAD,5)
				st.setState(State.COMPLETED)
				st.unset("cond")
				st.unset("altars_state")
				st.exitQuest(False)
				st.playSound("ItemSound.quest_finish")
				reset = Calendar.getInstance()
				reset.set(Calendar.MINUTE, RESET_MIN)
				# if time is >= RESET_HOUR - roll to the next day
				if reset.get(Calendar.HOUR_OF_DAY) >= RESET_HOUR :
					reset.add(Calendar.DATE, 1)
				reset.set(Calendar.HOUR_OF_DAY, RESET_HOUR)
				st.set("reset",str(reset.getTimeInMillis()))
		elif cond == 1 and npcId in ALTARS.keys() :
			idx = ALTARS[npcId]
			state = st.getInt("altars_state")
			if (state & idx) == 0 :
				st.set("altars_state",str(state | idx))
				st.takeItems(REPLENISHED_BEAD,1)
				st.giveItems(DISCHARGED_BEAD,1)
				st.playSound("ItemSound.quest_itemget")
				if st.getQuestItemsCount(DISCHARGED_BEAD) == 5 :
					st.set("cond","2")
					st.playSound("ItemSound.quest_middle")
				htmltext = "recharge.htm"
			else :
				htmltext = "findother.htm"
		return htmltext
Beispiel #10
0
 def tostation(self, varname, x, y, z, t):
     if isinstance(t, datetime):
         cal = Calendar.getInstance()
         cal.set(t.year, t.month - 1, t.day, t.hour, t.minute, t.second)
         t = cal.getTime()
     if z is None:
         return self.dataset.toStation(varname, x, y, t)
     else:
         return self.dataset.toStation(varname, x, y, z, t)
Beispiel #11
0
	def next( self, last, tz = TimeZone.getDefault() ):
		cal = Calendar.getInstance( tz, Locale.US )
		limit = cal.clone()
		limit.add( Calendar.YEAR, 1 )
		cal.setTime( last )
		cal.add( Calendar.MINUTE, self.wait )
		n = self.findNext( cal, limit )
		if n == None:
			return None
		return n.getTime()
Beispiel #12
0
 def init(self):
     self.getContext().addPropertyChangeListener(self) #ThrottleFrame change
     self.addressPanel=self.getContext().getCurrentThrottleFrame().getAddressPanel();
     self.addressPanel.addAddressListener(self) # change of throttle in Current frame
     self.throttle = self.getContext().getCurrentThrottleFrame().getAddressPanel().getThrottle() # the throttle
     self.speedAction =  SpeedAction()  #Speed increase thread
     self.speedAction.setThrottle( self.throttle )
     self.speedTimer = Timer(valueSpeedTimerRepeat, self.speedAction ) # Very important to use swing Timer object (see Swing and multithreading doc)
     self.speedTimer.setRepeats(True)
     self.label = JButton(ImageIcon(self.getFolder() + "/WiimoteThrottle.png","WiiMote")) #label
     self.label.addMouseListener(self.getMouseListeners()[0]) # In order to get the popupmenu on the button too
     self.add(self.label)
     self.lastTimeButton1 = Calendar.getInstance().getTimeInMillis()
     self.lastTimeButton2 = Calendar.getInstance().getTimeInMillis()
     self.lastTimeEStop = Calendar.getInstance().getTimeInMillis()
     self.wiiDevice = None
     self.sync = thread.allocate_lock() # A lock protecting bellow self.evt
     self.evt = None
     java.lang.System.setProperty("bluecove.jsr82.psm_minimum_off", "true"); # Required for Bluecove + WiiRemoteJ
     WiiRemoteJ.findRemotes(self, 1) # Search for 1 Wiimote, and call back
Beispiel #13
0
 def updateText(self,textField,startTime):
     count=1
     while(count < 10000):
         #print "start Time" + str(self.getTimeElapsed(startTime))
         print "start Time: " + str(int(startTime))
         #print "end Time" + str(time.time()-startTime)
         elapsed = Calendar.getInstance().getTimeInMillis() - startTime
         #print "elapsed Time" + self.getTimeElapsed(elapsed)
         timer =Timer(1000,self.printTime,())
         timer.start()
         textField.setText( 'Elapsed: %.2f seconds' % ( float( elapsed ) / 1000.0 ) );
         count =count+1
Beispiel #14
0
 def gettime(self, idx):
     date = self.dataset.getDataInfo().getTimes().get(idx)
     cal = Calendar.getInstance()
     cal.setTime(date)
     year = cal.get(Calendar.YEAR)
     month = cal.get(Calendar.MONTH) + 1
     day = cal.get(Calendar.DAY_OF_MONTH)
     hour = cal.get(Calendar.HOUR_OF_DAY)
     minute = cal.get(Calendar.MINUTE)
     second = cal.get(Calendar.SECOND)
     dt = datetime(year, month, day, hour, minute, second)
     return dt
Beispiel #15
0
    def setupjob(job, args):
        """
        Set up a job to run on crash-stats date ranges.

        Expects three arguments:
          startdate (yymmdd)
          enddate (yymmdd)
        """

        import java.text.SimpleDateFormat as SimpleDateFormat
        import java.util.Calendar as Calendar
        import com.mozilla.hadoop.hbase.mapreduce.MultiScanTableMapReduceUtil as MSTMRU
        from com.mozilla.util import Pair

        if len(args) != 2:
            raise Exception("Usage: <startdate-yymmdd> <enddate-yymmdd>")

        startarg, endarg = args

        sdf = SimpleDateFormat(dateformat)
        startdate = Calendar.getInstance()
        startdate.setTime(sdf.parse(startarg))
        enddate = Calendar.getInstance()
        enddate.setTime(sdf.parse(endarg))

        columns = [Pair(family, qualifier) for family, qualifier in columnlist]

        scans = MSTMRU.generateHexPrefixScans(startdate, enddate, dateformat,
                                              columns, 500, False)
        MSTMRU.initMultiScanTableMapperJob(
            'crash_reports',
            scans,
            None, None, None, job)

        # inform HadoopDriver about the columns we expect to receive
        job.getConfiguration().set("org.mozilla.jydoop.hbasecolumns",
                                   ','.join(':'.join(column) for column in columnlist))
	def actionPerformed(self,actionEvent):
		self.scl_long_tuneup_controller.getMessageTextField().setText("")	
		rightNow = Calendar.getInstance()
		date_format = SimpleDateFormat("MM.dd.yyyy")
		time_str = date_format.format(rightNow.getTime())				
		fc = JFileChooser(constants_lib.const_path_dict["XAL_XML_ACC_FILES_DIRS_PATH"])
		fc.setDialogTitle("Save SCL data into the SCL_new.xdxf file")
		fc.setApproveButtonText("Save")
		fl_filter = FileNameExtensionFilter("SCL Acc File",["xdxf",])
		fc.setFileFilter(fl_filter)
		fc.setSelectedFile(File("SCL_"+time_str+".xdxf"))		
		returnVal = fc.showOpenDialog(self.scl_long_tuneup_controller.linac_wizard_document.linac_wizard_window.frame)
		if(returnVal == JFileChooser.APPROVE_OPTION):
			fl_out = fc.getSelectedFile()
			fl_path = fl_out.getPath()
			if(fl_path.rfind(".xdxf") != (len(fl_path) - 5)):
				fl_out = File(fl_out.getPath()+".xdxf")	
			#---------prepare the XmlDataAdaptor 
			root_DA = XmlDataAdaptor.newEmptyDocumentAdaptor()
			scl_DA = root_DA.createChild("xdxf")	
			scl_DA.setValue("date",time_str)
			scl_DA.setValue("system","sns")
			scl_DA.setValue("version","2.0")
			#---- SCLMed	
			seq_name_arr = ["SCLMed","SCLHigh","HEBT1"]
			for seq_name in seq_name_arr:
				accl = self.scl_long_tuneup_controller.linac_wizard_document.accl
				seq = accl.findSequence(seq_name)
				cavs = seq.getAllNodesWithQualifier(AndTypeQualifier().and((OrTypeQualifier()).or(SCLCavity.s_strType)))
				quads = seq.getAllNodesWithQualifier(AndTypeQualifier().and((OrTypeQualifier()).or(Quadrupole.s_strType)))
				scl_seq_DA = scl_DA.createChild("sequence")
				scl_seq_DA.setValue("id",seq.getId())
				for quad in quads:
					node_DA = scl_seq_DA.createChild("node")
					node_DA.setValue("id",quad.getId())
					attr_DA = node_DA.createChild("attributes")
					field_DA = attr_DA.createChild("magnet")
					scl_quad_fields_dict_holder = self.scl_long_tuneup_controller.scl_long_tuneup_init_controller.scl_quad_fields_dict_holder
					field_DA.setValue("dfltMagFld",str(scl_quad_fields_dict_holder.quad_field_dict[quad]))
				for cav in cavs:
					node_DA = scl_seq_DA.createChild("sequence")
					node_DA.setValue("id",cav.getId())
					attr_DA = node_DA.createChild("attributes")
					rf_cav_DA = attr_DA.createChild("rfcavity")
					cav_wrappper = self.scl_long_tuneup_controller.getCav_WrapperForCavId(cav.getId())
					(amp,phase) =  (cav_wrappper.designAmp,cav_wrappper.designPhase)
					rf_cav_DA.setValue("amp",float("%8.5f"%amp))
					rf_cav_DA.setValue("phase",float("%8.3f"%phase))
			root_DA.writeTo(fl_out)		
Beispiel #17
0
 def cellvalue(self, fieldname, shapeindex):
     v = self.layer.getCellValue(fieldname, shapeindex)
     if isinstance(v, Date):
         cal = Calendar.getInstance()
         cal.setTime(v)
         year = cal.get(Calendar.YEAR)
         month = cal.get(Calendar.MONTH) + 1
         day = cal.get(Calendar.DAY_OF_MONTH)
         hour = cal.get(Calendar.HOUR_OF_DAY)
         minute = cal.get(Calendar.MINUTE)
         second = cal.get(Calendar.SECOND)
         dt = datetime(year, month, day, hour, minute, second)
         return dt
     else:
         return v
def minDiff(date):
	now = Date()
		
	cal = Calendar.getInstance()
	now = cal.getTime()
	
	dbDataTime = date.getTime() 	#in ms
	nowTime = now.getTime()			#in ms
	diff = nowTime - dbDataTime
	min = ((diff / (1000 * 60)) % 60)
	hr = ((diff / (1000 * 60 * 60)) % 24)
	days = (diff / (1000 * 60 * 60 * 24))
	
	tot_min = (days * 24) * 60 + hr * 60 + min
	
	return min
Beispiel #19
0
 def __activate__(self, context):
     self.auth = context["page"].authentication
     self.errorMsg = "" 
     self.request = context["request"]
     self.fromDtTxt =  self.request.getParameter("from")
     self.toDtTxt = self.request.getParameter("to")
     if (self.fromDtTxt is None or self.toDtTxt is None):
         curCal = Calendar.getInstance()
         self.fromDtTxt =  "%s-01-01" % curCal.get(Calendar.YEAR)
         self.toDtTxt =  "%s-12-31" % curCal.get(Calendar.YEAR)
     if (self.auth.is_logged_in()):
         if (self.auth.is_admin()==True):
             self.buildDashboard(context)
         else:
             self.errorMsg = "Requires Admin / Librarian / Reviewer access." 
     else:
         self.errorMsg = "Please login."
    def __init__(self):
                        
        dataDir = Settings.dataDir + 'ProgrammingEmail/CustomizeEmailHeaders/'
        
        # Create a instance of MailMessage class
        message = MailMessage()

            # Set subject of the message
        message.setSubject("New message created by Aspose.Email for Java")

        # Set Html body
        message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/>" +
            "<font color=blue>This line is in blue color</font>")

        # Set sender information
        message.setFrom(MailAddress("*****@*****.**", "Sender Name", False))

        # Add TO recipients
        message.getTo().add(MailAddress("*****@*****.**", "Recipient 1", False))

        # Message subject
        message.setSubject("Customizing Email Headers")

        # Specify Date
        timeZone=TimeZone()
        calendar=Calendar()
        calendar = calendar.getInstance(timeZone.getTimeZone("GMT"))

        date = calendar.getTime()
        message.setDate(date)

        # Specify XMailer
        message.setXMailer("Aspose.Email")

        # Specify Secret Header
        message.getHeaders().add("secret-header", "mystery")

        # Save message to disc
        messageFormat=MessageFormat()
        message.save(dataDir + "MsgHeaders.msg", messageFormat.getMsg())

        # Display Status
        print "Customized message headers Successfully."
Beispiel #21
0
        def addComponentsToPane(self):
            
            global stopWatch
           # global textF
            pane = JPanel()  
            layout = GridLayout(0,2)
            pane.setLayout(layout)
            
            
            distanceLabel = JLabel("Distance")
            pane.add(distanceLabel)
            
            distanceTextField = JTextField("Distance")
            pane.add(distanceTextField)
            
            timeLabel = JLabel("Time")
            pane.add(timeLabel)
            
            elapsed = Calendar.getInstance().getTimeInMillis()
            
            #timeTextField = JTextField("00:00")
            
            pane.add(self.timeTextField)
            
            colorLabel = JLabel("color")
            pane.add(colorLabel)
            
            colors = ["Black", "Blue", "Red"]
            colorCombo = JComboBox(colors)
            pane.add(colorCombo)
            startButton = JButton("Start", actionPerformed =self.startTimer)
            stopButton = JButton("Stop", actionPerformed = self.stopTimer)
            leftpanel = self.createChart()
        

            pane.add(startButton)
            pane.add(stopButton)
            self.add(pane)
            self.add(leftpanel,BorderLayout.EAST)
Beispiel #22
0
 def writedatarec(self, t, lidx, vname, fhour, grid, data):
     '''
     Write data record.
     
     :param t: (*datatime*) The time of the data.
     :param lidx: (*int*) Level index.
     :param vname: (*string*) Variable name.
     :param fhour: (*int*) Forecasting hour.
     :param grid: (*int*) Grid id to check if the data grid is bigger than 999. Header 
         record does not support grids of more than 999, therefore in those situations 
         the grid number is converted to character to represent the 1000s digit, 
         e.g. @(64)=<1000, A(65)=1000, B(66)=2000, etc.
     :param data: (*array_like*) Data array.
     
     :returns: (*int*) Check sum of the record data.
     '''
     cal = Calendar.getInstance()
     cal.set(t.year, t.month - 1, t.day, t.hour, t.minute, t.second)
     t = cal.getTime()
     ksum = self.arldata.writeGridData(t, lidx, vname, fhour, grid,
                                       data.asarray())
     return ksum
Beispiel #23
0
def generateCertificates(DevicePublicKey):
    # Generate random 2048-bit private and public keys
    keyPairGenerator = KeyPairGenerator.getInstance("RSA")
    keyPairGenerator.initialize(2048)
    keyPair = keyPairGenerator.genKeyPair()

    # Make it valid for 10 years
    calendar = Calendar.getInstance()
    startDate = calendar.getTime()
    calendar.add(Calendar.YEAR, 10)
    expiryDate = calendar.getTime()

    certGen = X509V1CertificateGenerator()
    dnName = X500Principal("CN=pyMobileDevice Self-Signed CA Certificate")

    certGen.setSerialNumber(BigInteger.ONE)
    certGen.setIssuerDN(dnName)
    certGen.setNotBefore(startDate)
    certGen.setNotAfter(expiryDate)
    certGen.setSubjectDN(dnName)  # subject = issuer
    certGen.setPublicKey(keyPair.getPublic())
    certGen.setSignatureAlgorithm("SHA1withRSA")

    #Load PKCS#1 RSA Public Key
    spec = X509EncodedKeySpec(convertPKCS1toPKCS8pubKey(DevicePublicKey))
    pubKey = KeyFactory.getInstance("RSA").generatePublic(spec)

    hostCertificate = "-----BEGIN CERTIFICATE-----\n" + certGen.generate(keyPair.getPrivate(), "BC").getEncoded().tostring().encode("base64") + "-----END CERTIFICATE-----\n"

    hostPrivateKey = "-----BEGIN PRIVATE KEY-----\n" + keyPair.getPrivate().getEncoded().tostring().encode("base64") + "-----END PRIVATE KEY-----\n"

    certGen.setPublicKey(pubKey)
    dnName = X500Principal("CN=pyMobileDevice Self-Signed Device Certificate")
    certGen.setSubjectDN(dnName)

    deviceCertificate = "-----BEGIN CERTIFICATE-----\n" + certGen.generate(keyPair.getPrivate(), "BC").getEncoded().tostring().encode("base64") + "-----END CERTIFICATE-----\n"

    return hostCertificate, hostPrivateKey, deviceCertificate
Beispiel #24
0
def newLoadBalancers(accountId,num,hosts):
    today = Calendar.getInstance()
    out = []
    for i in xrange(0,num):
        host = rnd.choice(hosts)
        cluster = host.getCluster()
        lb = LoadBalancer()
        lb.setHost(host)
        lb.setName("LB.%i"%ri(0,10000))
        lb.setAccountId(accountId)
        lb.setConnectionLogging(rnd.choice([True,False]))
        lb.setAlgorithm(rnd.choice(LoadBalancerAlgorithm.values()))
        lb.setPort(80)
        lb.setUpdated(today)
        lb.setCreated(today)
        lb.setProtocol(rnd.choice(LoadBalancerProtocol.values()))
        lb.setSessionPersistence(rnd.choice(SessionPersistence.values()))
        lb.setStatus(LoadBalancerStatus.ACTIVE)
        up = UserPages()
        up.setErrorpage("<html>Error</html>")
        lb.setUserPages(up)
        out.append(lb)
    return out
Beispiel #25
0
 def cellvalue(self, fieldname, shapeindex):
     '''
     Get attribute table cell value.
     
     :param fieldname: (*string*) Field name.
     :param shapeindex: (*int*) Shape index.
     
     :returns: The value in attribute table identified by field name and shape index.
     '''
     v = self.layer.getCellValue(fieldname, shapeindex)
     if isinstance(v, Date):
         cal = Calendar.getInstance()
         cal.setTime(v)
         year = cal.get(Calendar.YEAR)
         month = cal.get(Calendar.MONTH) + 1
         day = cal.get(Calendar.DAY_OF_MONTH)
         hour = cal.get(Calendar.HOUR_OF_DAY)
         minute = cal.get(Calendar.MINUTE)
         second = cal.get(Calendar.SECOND)
         dt = datetime(year, month, day, hour, minute, second)
         return dt
     else:
         return v
Beispiel #26
0
def rndLoadBalancers(num):
    out = []
    today = Calendar.getInstance()
    hosts = app.getList("from Host")
    rps = app.getList("from LoadBalancerRateProfile")
    for i in xrange(0,num):
        rnum = ri(0,10000)
        lb = LoadBalancer()
        lb.setName("LB.%i"%rnum)
        lb.setAccountId(31337)
        lb.setPort(80)
        lb.setSessionPersistence(False)
        lb.setUpdated(today)
        lb.setCreated(today)
        lb.setConnectionLogging(False)
        lb.setAlgorithm(rnd.choice(LoadBalancerAlgorithm.values()))
        lb.setProtocol(rnd.choice(LoadBalancerProtocol.values()))
        lb.setSessionPersistence(False)
        lb.setStatus(rnd.choice(LoadBalancerStatus.values()))
        lb.setHost(rnd.choice(hosts))
        lb.setLoadBalancerRateProfile(rnd.choice(rps))
        out.append(lb)
    return out
Beispiel #27
0
 def cellvalue(self, fieldname, shapeindex):
     '''
     Get attribute table cell value.
     
     :param fieldname: (*string*) Field name.
     :param shapeindex: (*int*) Shape index.
     
     :returns: The value in attribute table identified by field name and shape index.
     '''
     v = self.layer.getCellValue(fieldname, shapeindex)
     if isinstance(v, Date):
         cal = Calendar.getInstance()
         cal.setTime(v)
         year = cal.get(Calendar.YEAR)
         month = cal.get(Calendar.MONTH) + 1
         day = cal.get(Calendar.DAY_OF_MONTH)
         hour = cal.get(Calendar.HOUR_OF_DAY)
         minute = cal.get(Calendar.MINUTE)
         second = cal.get(Calendar.SECOND)
         dt = datetime(year, month, day, hour, minute, second)
         return dt
     else:
         return v
Beispiel #28
0
 def getRegister(self,rank,value):
   
   unix_timestamp = long(value);
   cal = Calendar.getInstance();
   cal.setTimeInMillis(  unix_timestamp * 1000 );
   
   if rank==0 :
     second = cal.get( Calendar.SECOND );
     minute = cal.get( Calendar.MINUTE );
     return minute * 256 + second;
     
   elif rank==1 :
     hour = cal.get( Calendar.HOUR_OF_DAY );
     day = cal.get( Calendar.DAY_OF_MONTH ) ;
     return day * 256 + hour;
     
   elif rank==2 :
     month = cal.get( Calendar.MONTH ) ;
     year = cal.get( Calendar.YEAR) % 100;
     return year * 256 + month;
     
   else:
     return 0;
Beispiel #29
0
def to_java_calendar(value):
    # type: (t.Any) -> Calendar
    """
    Converts any of the supported date types to ``java.util.Calendar``. If
    ``value`` does not have timezone information, the system default will be
    used.

    Examples:
        .. code-block::

            calendar_time = to_java_calendar(items["date_item"])

    Args:
        value: the value to convert

    Returns:
        java.util.Calendar: the converted value

    Raises:
        TypeError: if the type of ``value`` is not supported by this package
    """
    if isinstance(value, Calendar):
        return value

    value_zoneddatetime = to_java_zoneddatetime(value)
    new_calendar = Calendar.getInstance(
        TimeZone.getTimeZone(value_zoneddatetime.getZone().getId()))
    new_calendar.set(Calendar.YEAR, value_zoneddatetime.getYear())
    new_calendar.set(Calendar.MONTH, value_zoneddatetime.getMonthValue() - 1)
    new_calendar.set(Calendar.DAY_OF_MONTH,
                     value_zoneddatetime.getDayOfMonth())
    new_calendar.set(Calendar.HOUR_OF_DAY, value_zoneddatetime.getHour())
    new_calendar.set(Calendar.MINUTE, value_zoneddatetime.getMinute())
    new_calendar.set(Calendar.SECOND, value_zoneddatetime.getSecond())
    new_calendar.set(Calendar.MILLISECOND,
                     int(value_zoneddatetime.getNano() / 1000000))
    return new_calendar
Beispiel #30
0
def getbill(aid,ndo,inc=Calendar.DAY_OF_MONTH):
    s = app.getSession()
    out = []
    now = Calendar.getInstance()
    tdelta = timedelta(now,ndo,inc=inc)
    query  = "select u.loadbalancer.accountId, u.loadbalancer.id, "
    query += "u.loadbalancer.name, u.numVips, "
    query += "u.startTime, u.endTime, u.incomingTransfer, "
    query += "u.outgoingTransfer from Usage u "
    query += "where u.loadbalancer.accountId = :aid and startTime >= :tdelta "
    query += "order by u.loadbalancer.accountId asc,u.loadbalancer.id asc, " 
    query += "u.endTime desc"
    hq = s.createQuery(query)
    hq.setParameter("aid",aid)
    hq.setParameter("tdelta",tdelta)
    results = hq.list()
    printf("%s\n",query)
    for r in results:
        row = []
        for c in r:
            row.append(c)
        out.append(row)
    printf("\nQuery = %s\n",query)
    return out
def makeTimeSeriesContainer(station, interval, tz, records, decodeInfo):
    global timezones
    sdf = SimpleDateFormat("ddMMMyyyy, HH:mm")
    if dssTimezone:
        if not timezones["DSS"]:
            timezones["DSS"] = TimeZone.getTimeZone(
                tzInfo[dssTimezone]["JAVA"])
        sdf.setTimeZone(timezones["DSS"])
    else:
        sdf.setTimeZone(timezones["USGS"])
    dd, decodeInfo = decodeInfo
    cal = Calendar.getInstance()
    t = HecTime()
    tsc = TimeSeriesContainer()
    tsc.interval = interval
    times = []
    values = []
    tsc.quality = None
    factor = decodeInfo["DSS_FACTOR"]
    for j in range(len(records)):
        millis, value = records[j]
        cal.setTimeInMillis(millis)
        t.set(sdf.format(cal.getTime()))
        times.append(t.value())
        try:
            values.append(float(value) * factor)
        except:
            values.append(Constants.UNDEFINED)
    tsc.times = times
    tsc.values = values
    tsc.startTime = times[0]
    tsc.endTime = times[-1]
    tsc.numberValues = len(values)
    tsc.timeZoneID = sdf.getTimeZone().getID()
    tsc.timeZoneRawOffset = sdf.getTimeZone().getRawOffset()
    return tsc
def setupjob(job, args):
    """
    Similar to the above, but run telemetry data that's already been exported
    to HDFS.

    Jobs expect two arguments, startdate and enddate, both in yyyyMMdd format.
    """

    import java.text.SimpleDateFormat as SimpleDateFormat
    import java.util.Date as Date
    import java.util.Calendar as Calendar
    import java.util.concurrent.TimeUnit as TimeUnit
    import com.mozilla.util.DateUtil as DateUtil
    import com.mozilla.util.DateIterator as DateIterator
    import org.apache.hadoop.mapreduce.lib.input.FileInputFormat as FileInputFormat
    import org.apache.hadoop.mapreduce.lib.input.SequenceFileAsTextInputFormat as MyInputFormat

    if len(args) != 2:
        raise Exception("Usage: <startdate-YYYYMMDD> <enddate-YYYYMMDD>")

    # use to collect up each date in the given range
    class MyDateIterator(DateIterator):
        def __init__(self):
            self._list = []

        def get(self):
            return self._list

        def see(self, aTime):
            self._list.append(aTime)

    sdf = SimpleDateFormat(dateformat)
    sdf_hdfs = SimpleDateFormat(hdfs_dateformat)
    startdate = Calendar.getInstance()
    startdate.setTime(sdf.parse(args[0]))

    enddate = Calendar.getInstance()
    enddate.setTime(sdf.parse(args[1]))

    nowdate = Calendar.getInstance()

    # HDFS only contains the last 2 weeks of data (up to yesterday)
    startMillis = startdate.getTimeInMillis()
    endMillis = enddate.getTimeInMillis()
    nowMillis = nowdate.getTimeInMillis()

    startDiff = nowMillis - startMillis
    if TimeUnit.DAYS.convert(startDiff, TimeUnit.MILLISECONDS) > 14:
        raise Exception(
            "HDFS Data only includes the past 14 days of history. Try again with more recent dates or use the HBase data directly."
        )

    endDiff = nowMillis - endMillis
    if TimeUnit.DAYS.convert(endDiff, TimeUnit.MILLISECONDS) < 1:
        raise Exception(
            "HDFS Data only includes data up to yesterday. For (partial) data for today, use the HBase data directly."
        )

    dates = MyDateIterator()

    DateUtil.iterateByDay(startMillis, endMillis, dates)

    paths = []
    for d in dates.get():
        paths.append(hdfs_pathformat % (sdf_hdfs.format(Date(d))))

    job.setInputFormatClass(MyInputFormat)
    FileInputFormat.setInputPaths(job, ",".join(paths))
    job.getConfiguration().set("org.mozilla.jydoop.mappertype", "TEXT")
    def addForecasts(self, forecasts):

        self.forecastLayout.removeAllViews()
        self.scrollView.scrollTo(0, 0)

        if len(forecasts) == 0:
            return

        self.placeLabel.setText(forecasts[0].place)
        self.creditLabel.setText(forecasts[0].credit)

        firstDate = forecasts[0].from_
        calendar = Calendar.getInstance()
        calendar.setTime(firstDate)

        currentDay = calendar.get(Calendar.DAY_OF_MONTH)

        context = self.getContext()

        for forecast in forecasts:

            #             Date
            # Temperature Symbol Description
            #                    Wind

            # Get the day of the month.
            date = forecast.from_
            calendar.setTime(date)
            day = calendar.get(Calendar.DAY_OF_MONTH)

            # Add an item for the date for the first item and any item
            # following a day change.
            if date == firstDate or day != currentDay:
                dateView = TextView(context)
                dateView.setText(
                    calendar.getDisplayName(Calendar.DAY_OF_WEEK,
                        Calendar.LONG, Locale.getDefault()) + " " + \
                    str(day) + " " + \
                    calendar.getDisplayName(Calendar.MONTH,
                        Calendar.LONG, Locale.getDefault()) + " " + \
                    str(calendar.get(Calendar.YEAR)))

                dateView.setGravity(Gravity.CENTER)
                dateView.setTypeface(Typeface.create(None, Typeface.BOLD))
                dateView.setBackgroundColor(self.lightBackground)
                dateView.setTextColor(0xff000000)

                self.forecastLayout.addView(dateView, self.rowLayout())

            currentDay = day

            # Time
            timeString = String.format(
                "%02d:%02d:%02d - ",
                array([
                    calendar.get(Calendar.HOUR_OF_DAY),
                    calendar.get(Calendar.MINUTE),
                    calendar.get(Calendar.SECOND)
                ]))

            date = forecast.to_
            calendar.setTime(date)

            timeString += String.format(
                "%02d:%02d:%02d",
                array([
                    calendar.get(Calendar.HOUR_OF_DAY),
                    calendar.get(Calendar.MINUTE),
                    calendar.get(Calendar.SECOND)
                ]))

            timeView = TextView(context)
            timeView.setText(timeString)

            timeView.setGravity(Gravity.CENTER)
            timeView.setTypeface(Typeface.create(None, Typeface.BOLD))

            self.forecastLayout.addView(timeView, self.rowLayout())

            # Symbol, temperature, description and wind
            row = RelativeLayout(context)

            # Symbol
            lp = self.itemLayout()
            lp.addRule(RelativeLayout.CENTER_IN_PARENT)

            if forecast.symbol != -1:
                imageView = ImageView(context)
                imageView.setImageResource(forecast.symbol)
                row.addView(imageView, lp)
            else:
                spacer = Space(context)
                row.addView(spacer, lp)

            # Temperature
            tempView = TextView(context)
            tempView.setTextSize(tempView.getTextSize() * 2)

            if forecast.temperatureUnit == "celsius":
                tempView.setText(forecast.temperature + u"\u2103")
            else:
                tempView.setText(forecast.temperature + " " +
                                 forecast.temperatureUnit)

            lp = self.itemLayout()
            lp.addRule(RelativeLayout.CENTER_VERTICAL)
            lp.addRule(RelativeLayout.ALIGN_PARENT_LEFT)
            row.addView(tempView, lp)

            # Description and wind speed
            descLayout = LinearLayout(context)
            descLayout.setOrientation(LinearLayout.VERTICAL)

            descView = TextView(context)
            descView.setText(forecast.description)
            descLayout.addView(descView, lp)

            windView = TextView(context)
            windView.setText(forecast.windSpeed)
            descLayout.addView(windView, lp)

            lp = self.itemLayout()
            lp.addRule(RelativeLayout.CENTER_VERTICAL)
            lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT)
            row.addView(descLayout, lp)

            self.forecastLayout.addView(row, self.rowLayout())
Beispiel #34
0
    def propertyChange(self, event):
        # Customize bellow for throttles calls:
        if (event.propertyName == "Value"):  # USB
            if (event.oldValue.getController() == self.desiredController):
                component = event.oldValue.getComponent().toString()
                value = event.newValue
                # Uncomment bellow line to see component name and its value
                # print "Component",component,"value changed to",value
                try:
                    # Change current ThrottleFrame
                    if ((component == self.driver.componentNextThrottleFrame)
                            and
                        (value == self.driver.valueNextThrottleFrame)):  #NEXT
                        self.getContext().nextThrottleFrame()
                    if ((component
                         == self.driver.componentPreviousThrottleFrame) and
                        (value == self.driver.valuePreviousThrottleFrame)
                        ):  #PREVIOUS
                        self.getContext().previousThrottleFrame()
                    if ((component
                         == self.driver.componentNextRunningThrottleFrame) and
                        (value == self.driver.valueNextRunningThrottleFrame)
                        ):  #NEXT RUNNING
                        self.getContext().nextRunningThrottleFrame()
                    if ((component
                         == self.driver.componentPreviousRunningThrottleFrame)
                            and
                        (value == self.driver.valuePreviousRunningThrottleFrame
                         )):  #PREVIOUS RUNNING
                        self.getContext().previousRunningThrottleFrame()
                except AttributeError:
                    pass

                if (self.throttle == None):
                    try:
                        # Browse through roster
                        if ((component
                             == self.driver.componentNextRosterBrowse) and
                            (value == self.driver.valueNextRoster)):  #NEXT
                            selectedIndex = self.addressPanel.getRosterSelectedIndex(
                            )
                            self.addressPanel.setVisible(True)
                            self.addressPanel.setIcon(False)
                            self.addressPanel.setRosterSelectedIndex(
                                selectedIndex + 1)
                        if ((component
                             == self.driver.componentPreviousRosterBrowse) and
                            (value
                             == self.driver.valuePreviousRoster)):  #PREVIOUS
                            selectedIndex = self.addressPanel.getRosterSelectedIndex(
                            )
                            self.addressPanel.setVisible(True)
                            self.addressPanel.setIcon(False)
                            self.addressPanel.setRosterSelectedIndex(
                                selectedIndex - 1)
                    except AttributeError:
                        pass
                    try:
                        # Request a throttle
                        if ((component == self.driver.componentRosterSelect)
                                and (value == self.driver.valueRosterSelect)):
                            self.addressPanel.selectRosterEntry()
                    except AttributeError:
                        pass

                # From there; current throttle control, hence require a throttle
                if (self.throttle != None):
                    # Release current throttle
                    try:
                        if ((component == self.driver.componentThrottleRelease)
                                and
                            (value == self.driver.valueThrottleRelease)):
                            self.addressPanel.dispatchAddress()
                    except AttributeError:
                        pass

                    try:
                        # Speed - dynamic controler (joystick going back to neutral position)
                        if ((component == self.driver.componentSpeedIncrease)
                                or
                            (component == self.driver.componentSpeedDecrease)
                                or (component == self.driver.componentSpeed)):
                            if ((component
                                 == self.driver.componentSpeedIncrease) and
                                (value == self.driver.valueSpeedIncrease)):
                                self.speedAction.setSpeedIncrement(0.03)
                            if ((component
                                 == self.driver.componentSpeedDecrease) and
                                (value == self.driver.valueSpeedDecrease)):
                                self.speedAction.setSpeedIncrement(-0.03)
                            if (component == self.driver.componentSpeed):
                                try:
                                    self.vsd = valueSpeedDivider * self.driver.componentSpeedMultiplier
                                except AttributeError:
                                    self.vsd = valueSpeedDivider
                                self.speedAction.setSpeedIncrement(value /
                                                                   self.vsd)
                            if (abs(value) > self.driver.valueSpeedTrigger):
                                self.speedTimer.start()
                            else:
                                self.speedTimer.stop()
                    except AttributeError:
                        self.speedTimer.stop(
                        )  # just in case, stop it, really should never get there

                    try:
                        # Speed v2 - static controler (lever on RailDriver or AAR105)
                        if (component == self.driver.componentSpeedSet):
                            # negative is lever front, positive is lever back
                            # limit range to only positive side of lever
                            if (value < self.driver.valueSpeedSetMinValue):
                                value = self.driver.valueSpeedSetMinValue
                            if (value > self.driver.valueSpeedSetMaxValue):
                                value = self.driver.valueSpeedSetMaxValue
                            # convert fraction of input to speed step
                            self.throttle.setSpeedSetting(
                                (value - self.driver.valueSpeedSetMinValue) /
                                (self.driver.valueSpeedSetMaxValue -
                                 self.driver.valueSpeedSetMinValue))
                            print "Slider Speed:", self.controlPanel.getDisplaySlider(
                            )
                    except AttributeError:
                        pass
                    # Direction
                    try:
                        if ((component
                             == self.driver.componentDirectionForward) and
                            (value == self.driver.valueDirectionForward)):
                            self.throttle.setIsForward(True)
                        if ((component
                             == self.driver.componentDirectionBackward) and
                            (value == self.driver.valueDirectionBackward)):
                            self.throttle.setIsForward(False)
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentDirectionSwitch)
                                and
                            (value == self.driver.valueDirectionSwitch)):
                            self.throttle.setIsForward(
                                not self.throttle.getIsForward())
                    except AttributeError:
                        pass

                    # Speed presets
                    try:  # STOP
                        if ((component == self.driver.componentStopSpeed)
                                and (value == self.driver.valueStopSpeed)):
                            if (Calendar.getInstance().getTimeInMillis() -
                                    self.lastTimeStopButton < delay4doubleTap):
                                self.throttle.setSpeedSetting(
                                    EStopSpeed)  # EStop on double tap
                            else:
                                self.throttle.setSpeedSetting(speedStopSpeed)
                            self.lastTimeStopButton = Calendar.getInstance(
                            ).getTimeInMillis()
                    except AttributeError:
                        pass
                    try:  # EStop
                        if ((component == self.driver.componentEStopSpeed)
                                and (value == self.driver.valueEStopSpeed)):
                            self.throttle.setSpeedSetting(EStopSpeed)
                    except AttributeError:
                        pass
                    try:  # EStop
                        if ((component == self.driver.componentEStopSpeedBis)
                                and (value == self.driver.valueEStopSpeedBis)):
                            self.throttle.setSpeedSetting(EStopSpeed)
                    except AttributeError:
                        pass
                    try:  # SLOW
                        if ((component == self.driver.componentSlowSpeed)
                                and (value == self.driver.valueSlowSpeed)):
                            self.throttle.setSpeedSetting(speedSlowSpeed)
                    except AttributeError:
                        pass
                    try:  # CRUISE
                        if ((component == self.driver.componentCruiseSpeed)
                                and (value == self.driver.valueCruiseSpeed)):
                            if (Calendar.getInstance().getTimeInMillis() -
                                    self.lastTimeCruiseButton <
                                    delay4doubleTap):  # EStop on double tap
                                self.throttle.setSpeedSetting(
                                    speedMaxSpeed)  # Max speed on double tap
                            else:
                                self.throttle.setSpeedSetting(speedCruiseSpeed)
                            self.lastTimeCruiseButton = Calendar.getInstance(
                            ).getTimeInMillis()
                    except AttributeError:
                        pass
                    try:  # MAX
                        if ((component == self.driver.componentMaxSpeed)
                                and (value == self.driver.valueMaxSpeed)):
                            self.throttle.setSpeedSetting(speedMaxSpeed)
                    except AttributeError:
                        pass

                    # Functions
                    try:
                        if ((component == self.driver.componentF0)
                                and (value == self.driver.valueF0)):
                            self.throttle.setF0(not self.throttle.getF0())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(0))
                                and (component == self.driver.componentF0)
                                and (value == self.driver.valueF0Off)):
                            self.throttle.setF0(not self.throttle.getF0())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF1)
                                and (value == self.driver.valueF1)):
                            self.throttle.setF1(not self.throttle.getF1())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(1))
                                and (component == self.driver.componentF1)
                                and (value == self.driver.valueF1Off)):
                            self.throttle.setF1(not self.throttle.getF1())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF2)
                                and (value == self.driver.valueF2)):
                            self.throttle.setF2(not self.throttle.getF2())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(2))
                                and (component == self.driver.componentF2)
                                and (value == self.driver.valueF2Off)):
                            self.throttle.setF2(not self.throttle.getF2())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF3)
                                and (value == self.driver.valueF3)):
                            self.throttle.setF3(not self.throttle.getF3())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(3))
                                and (component == self.driver.componentF3)
                                and (value == self.driver.valueF3Off)):
                            self.throttle.setF3(not self.throttle.getF3())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF4)
                                and (value == self.driver.valueF4)):
                            self.throttle.setF4(not self.throttle.getF4())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(4))
                                and (component == self.driver.componentF4)
                                and (value == self.driver.valueF4Off)):
                            self.throttle.setF4(not self.throttle.getF4())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF5)
                                and (value == self.driver.valueF5)):
                            self.throttle.setF5(not self.throttle.getF5())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(5))
                                and (component == self.driver.componentF5)
                                and (value == self.driver.valueF5Off)):
                            self.throttle.setF5(not self.throttle.getF5())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF6)
                                and (value == self.driver.valueF6)):
                            self.throttle.setF6(not self.throttle.getF6())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(6))
                                and (component == self.driver.componentF6)
                                and (value == self.driver.valueF6Off)):
                            self.throttle.setF6(not self.throttle.getF6())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF7)
                                and (value == self.driver.valueF7)):
                            self.throttle.setF7(not self.throttle.getF7())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(7))
                                and (component == self.driver.componentF7)
                                and (value == self.driver.valueF7Off)):
                            self.throttle.setF7(not self.throttle.getF7())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF8)
                                and (value == self.driver.valueF8)):
                            self.throttle.setF8(not self.throttle.getF8())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(8))
                                and (component == self.driver.componentF8)
                                and (value == self.driver.valueF8Off)):
                            self.throttle.setF8(not self.throttle.getF8())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF9)
                                and (value == self.driver.valueF9)):
                            self.throttle.setF9(not self.throttle.getF9())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(9))
                                and (component == self.driver.componentF9)
                                and (value == self.driver.valueF9Off)):
                            self.throttle.setF9(not self.throttle.getF9())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF10)
                                and (value == self.driver.valueF10)):
                            self.throttle.setF10(not self.throttle.getF10())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(10))
                                and (component == self.driver.componentF10)
                                and (value == self.driver.valueF10Off)):
                            self.throttle.setF10(not self.throttle.getF10())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF11)
                                and (value == self.driver.valueF11)):
                            self.throttle.setF11(not self.throttle.getF11())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(11))
                                and (component == self.driver.componentF11)
                                and (value == self.driver.valueF11Off)):
                            self.throttle.setF11(not self.throttle.getF11())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF12)
                                and (value == self.driver.valueF12)):
                            self.throttle.setF12(not self.throttle.getF12())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(12))
                                and (component == self.driver.componentF12)
                                and (value == self.driver.valueF12Off)):
                            self.throttle.setF12(not self.throttle.getF12())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF13)
                                and (value == self.driver.valueF13)):
                            self.throttle.setF13(not self.throttle.getF13())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(13))
                                and (component == self.driver.componentF13)
                                and (value == self.driver.valueF13Off)):
                            self.throttle.setF13(not self.throttle.getF13())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF14)
                                and (value == self.driver.valueF14)):
                            self.throttle.setF14(not self.throttle.getF14())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(14))
                                and (component == self.driver.componentF14)
                                and (value == self.driver.valueF14Off)):
                            self.throttle.setF14(not self.throttle.getF14())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF15)
                                and (value == self.driver.valueF15)):
                            self.throttle.setF15(not self.throttle.getF15())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(15))
                                and (component == self.driver.componentF15)
                                and (value == self.driver.valueF15Off)):
                            self.throttle.setF15(not self.throttle.getF15())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF16)
                                and (value == self.driver.valueF16)):
                            self.throttle.setF16(not self.throttle.getF16())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(16))
                                and (component == self.driver.componentF16)
                                and (value == self.driver.valueF16Off)):
                            self.throttle.setF16(not self.throttle.getF16())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF17)
                                and (value == self.driver.valueF17)):
                            self.throttle.setF17(not self.throttle.getF17())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(17))
                                and (component == self.driver.componentF17)
                                and (value == self.driver.valueF17Off)):
                            self.throttle.setF17(not self.throttle.getF17())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF18)
                                and (value == self.driver.valueF18)):
                            self.throttle.setF18(not self.throttle.getF18())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(18))
                                and (component == self.driver.componentF18)
                                and (value == self.driver.valueF18Off)):
                            self.throttle.setF18(not self.throttle.getF18())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF19)
                                and (value == self.driver.valueF19)):
                            self.throttle.setF19(not self.throttle.getF19())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(19))
                                and (component == self.driver.componentF19)
                                and (value == self.driver.valueF19Off)):
                            self.throttle.setF19(not self.throttle.getF19())
                    except AttributeError:
                        pass

                    try:
                        if ((component == self.driver.componentF20)
                                and (value == self.driver.valueF20)):
                            self.throttle.setF20(not self.throttle.getF20())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(20))
                                and (component == self.driver.componentF20)
                                and (value == self.driver.valueF20Off)):
                            self.throttle.setF20(not self.throttle.getF20())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF21)
                                and (value == self.driver.valueF21)):
                            self.throttle.setF21(not self.throttle.getF21())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(21))
                                and (component == self.driver.componentF21)
                                and (value == self.driver.valueF21Off)):
                            self.throttle.setF21(not self.throttle.getF21())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF22)
                                and (value == self.driver.valueF22)):
                            self.throttle.setF22(not self.throttle.getF22())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(22))
                                and (component == self.driver.componentF22)
                                and (value == self.driver.valueF22Off)):
                            self.throttle.setF22(not self.throttle.getF22())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF23)
                                and (value == self.driver.valueF23)):
                            self.throttle.setF23(not self.throttle.getF23())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(23))
                                and (component == self.driver.componentF23)
                                and (value == self.driver.valueF23Off)):
                            self.throttle.setF23(not self.throttle.getF23())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF24)
                                and (value == self.driver.valueF24)):
                            self.throttle.setF24(not self.throttle.getF24())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(24))
                                and (component == self.driver.componentF24)
                                and (value == self.driver.valueF24Off)):
                            self.throttle.setF24(not self.throttle.getF24())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF25)
                                and (value == self.driver.valueF25)):
                            self.throttle.setF25(not self.throttle.getF25())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(25))
                                and (component == self.driver.componentF25)
                                and (value == self.driver.valueF25Off)):
                            self.throttle.setF25(not self.throttle.getF25())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF26)
                                and (value == self.driver.valueF26)):
                            self.throttle.setF26(not self.throttle.getF26())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(26))
                                and (component == self.driver.componentF26)
                                and (value == self.driver.valueF26Off)):
                            self.throttle.setF26(not self.throttle.getF26())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF27)
                                and (value == self.driver.valueF27)):
                            self.throttle.setF27(not self.throttle.getF27())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(27))
                                and (component == self.driver.componentF27)
                                and (value == self.driver.valueF27Off)):
                            self.throttle.setF27(not self.throttle.getF27())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF28)
                                and (value == self.driver.valueF28)):
                            self.throttle.setF28(not self.throttle.getF28())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(28))
                                and (component == self.driver.componentF28)
                                and (value == self.driver.valueF28Off)):
                            self.throttle.setF28(not self.throttle.getF28())
                    except AttributeError:
                        pass
                    try:
                        if ((component == self.driver.componentF29)
                                and (value == self.driver.valueF29)):
                            self.throttle.setF29(not self.throttle.getF29())
                        if ((self.roster != None)
                                and (not self.roster.getFunctionLockable(29))
                                and (component == self.driver.componentF29)
                                and (value == self.driver.valueF29Off)):
                            self.throttle.setF29(not self.throttle.getF29())
                    except AttributeError:
                        pass

        # Nothing to customize bellow this point
        if (event.propertyName == "ThrottleFrame"
            ):  # Current throttle frame changed
            self.speedTimer.stop()
            event.oldValue.getAddressPanel().removeAddressListener(self)
            self.addressPanel = event.newValue.getAddressPanel()
            self.throttle = self.addressPanel.getThrottle()
            self.roster = self.addressPanel.getRosterEntry()
            self.speedAction.setThrottle(self.throttle)
            event.newValue.getAddressPanel().addAddressListener(self)
Beispiel #35
0
 def stop(self, event):
     elapsed = Calendar.getInstance().getTimeInMillis() - self.started
     self.label.setText('Elapsed: %.2f seconds' % (float(elapsed) / 1000.0))
Beispiel #36
0
    def onTalk(self, npc, player):
        htmltext = "<html><body>目前沒有執行任務,或條件不符。</body></html>"
        st = player.getQuestState(qn)
        if not st: return htmltext

        npcId = npc.getNpcId()
        cond = st.getInt("cond")
        id = st.getState()
        if npcId == KANEMIKA:
            if cond == 0:
                reset = st.get("reset")
                remain = 0
                if reset and reset.isdigit():
                    remain = long(reset) - System.currentTimeMillis()
                if remain <= 0:
                    if player.getLevel() >= 80:
                        htmltext = "32650-01.htm"
                    else:
                        htmltext = "32650-00.htm"
                        st.exitQuest(True)
                else:
                    htmltext = "32650-09.htm"
            elif cond == 1:
                if st.getQuestItemsCount(EVIDENCE_OF_MIGRATION) >= 1:
                    htmltext = "32650-07.htm"
                else:
                    htmltext = "32650-06.htm"
            elif cond == 2 and st.getQuestItemsCount(
                    EVIDENCE_OF_MIGRATION) == 10:
                htmltext = "32650-08.htm"
                st.giveItems(ADENA, 65000)
                st.takeItems(EVIDENCE_OF_MIGRATION, 10)
                st.setState(State.COMPLETED)
                st.unset("cond")
                st.exitQuest(False)
                st.playSound("ItemSound.quest_finish")
                reset = Calendar.getInstance()
                reset.set(Calendar.MINUTE, RESET_MIN)
                # if time is >= RESET_HOUR - roll to the next day
                if reset.get(Calendar.HOUR_OF_DAY) >= RESET_HOUR:
                    reset.add(Calendar.DATE, 1)
                reset.set(Calendar.HOUR_OF_DAY, RESET_HOUR)
                st.set("reset", str(reset.getTimeInMillis()))
        elif cond == 1 and npcId == WARRIOR_NPC:
            if self.getRandom(100) < 50:
                htmltext = "32651-01.htm"
                st.giveItems(EVIDENCE_OF_MIGRATION, 1)
                st.playSound("ItemSound.quest_itemget")
                npc.getAI().setIntention(
                    CtrlIntention.AI_INTENTION_MOVE_TO,
                    L2CharPosition(npc.getX() + 100,
                                   npc.getY() + 100, npc.getZ(), 0))
                npc.getSpawn().decreaseCount(npc)
                npc.deleteMe()
                if st.getQuestItemsCount(EVIDENCE_OF_MIGRATION) == 10:
                    st.set("cond", "2")
                    st.playSound("ItemSound.quest_middle")
            else:
                htmltext = ""
                player.sendPacket(
                    ExShowScreenMessage(
                        2, 0, 5, 0, 1, 0, 0, 2, 4000, 1, "", NpcStringId.
                        THE_GRAVE_ROBBER_WARRIOR_HAS_BEEN_FILLED_WITH_DARK_ENERGY_AND_IS_ATTACKING_YOU
                    ))
                warrior = st.addSpawn(WARRIOR_MON, npc.getX(), npc.getY(),
                                      npc.getZ(), npc.getHeading(), True,
                                      600000)
                warrior.setRunning()
                warrior.addDamageHate(player, 0, 999)
                warrior.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK,
                                             player)
                if self.getRandom(100) < 50:
                    npc.broadcastPacket(
                        NpcSay(npc.getObjectId(), 0, npc.getNpcId(),
                               NpcStringId.GRUNT_OH))
                    npc.getSpawn().decreaseCount(npc)
                    npc.deleteMe()
                else:
                    npc.broadcastPacket(
                        NpcSay(npc.getObjectId(), 0, npc.getNpcId(),
                               NpcStringId.GRUNT_WHATS_WRONG_WITH_ME))
                    npc.getSpawn().decreaseCount(npc)
                    npc.deleteMe()
        return htmltext
Beispiel #37
0
from java.util import Calendar
c1 = Calendar.getInstance()
print(c1.get(Calendar.MONTH))
print(c1.get(Calendar.HOUR))
print(c1.get(Calendar.DATE))
print(c1.get(Calendar.MINUTE))
print(c1.get(Calendar.SECOND))
print(c1.get(Calendar.AM_PM))
Beispiel #38
0
from java.util import Calendar
from java.util import Date
from psdi.mbo import MboRemote
from psdi.mbo import MboSetRemote
from psdi.mbo import SqlFormat
from java.util import GregorianCalendar

WEEKDAYS =  ["ZONDAG","MAANDAG", "DINSDAG", "WOENSDAG", "DONDERDAG", "VRIJDAG", "ZATERDAG"]
cal=Calendar.getInstance()
cal.setTime(mbo.getDate('STARTDATE'))
destMboSet = mbo.getMboSet("NTPLANARRIVAL")
if not destMboSet.isEmpty():
    destMboSet.deleteAll()
for x in range(7):
    if x>0:
        cal.add(Calendar.DATE,1)
    weekday=WEEKDAYS[ cal.get( Calendar.DAY_OF_WEEK )-1]
    headerMboSet = mbo.getMboSet("NTPLANHEADER")
    sqf = SqlFormat("ntday = :1 and ntvalidfrom <= :2 and :2 <= ntvalidto")
    sqf.setObject(1, "NTPLANHEADER", "NTDAY", weekday)
    sqf.setDate(2, cal.getTime())
    headerMboSet.setWhere(sqf.format())
    headerMboSet.reset()
    if not headerMboSet.isEmpty():
        headerMbo = headerMboSet.moveFirst()
        sourceMboSet = headerMbo.getMboSet("NTPLANSCHEDULE");
        if not sourceMboSet.isEmpty():
            sourceMbo=sourceMboSet.moveFirst()
            while sourceMbo:
                destMbo = destMboSet.add()
                destMbo.setValue("LOCATION", sourceMbo.getString("LOCATION"))
Beispiel #39
0
#Default hours and minutes values
days = 0
hours = 0
minutes = 0

#If Actual Start and Actual Finish are not null, so calculate Estimated Duration
if not mbo.isNull('CHANGEDATE') and mbo.getString("STATUS") in ["RCAREVIEW"]:

    FRACSet = MXServer.getMXServer().getMboSet("FRACSTATUS", mbo.getUserInfo())
    FRACSet.setWhere("FRACASNUM='" + mbo.getString("FRACASNUM") +
                     "' and STATUS='RCAINPROG' ")
    rcainprg = FRACSet.moveLast()
    rcainprgdate = rcainprg.getDate('FRACASETC')
    rcareviewdate = mbo.getDate('CHANGEDATE')
    if rcareviewdate >= rcainprgdate:
        cal2 = Calendar.getInstance()
        cal = Calendar.getInstance()
        cal2.setTime(rcareviewdate)
        etcdate = rcainprgdate.getTime()
        cal.setTime(rcainprgdate)
        if (cal2.get(cal2.DAY_OF_WEEK)) in [cal2.FRIDAY]:
            rcareviewdate = DateUtility.getDate(rcareviewdate)
        if (cal2.get(cal2.DAY_OF_WEEK)) in [cal2.SATURDAY]:
            rcareviewdate = DateUtility.addDays(rcareviewdate, -1)
            rcareviewdate = DateUtility.getDate(rcareviewdate)
        cal = Calendar.getInstance()
        cal2.setTime(rcareviewdate)

        etcdate = rcainprgdate.getTime()
        cal.setTime(rcainprgdate)
Beispiel #40
0
 def run(self):
     self.sync.acquire()
     evt = self.evt
     self.sync.release()
     if (self.speedTimer != None):
         self.speedTimer.stop()  # In any case
     # ThrottleFrames
     if (evt.wasReleased(WRButtonEvent.RIGHT)):  # NEXT
         self.getContext().nextThrottleFrame()
     if (evt.wasReleased(WRButtonEvent.LEFT)):  # PREVIOUS
         self.getContext().previousThrottleFrame()
     if (evt.wasReleased(WRButtonEvent.UP)):  # NEXT RUNNING
         self.getContext().nextRunningThrottleFrame()
     if (evt.wasReleased(WRButtonEvent.DOWN)):  # PREVIOUS RUNNING
         self.getContext().previousRunningThrottleFrame()
     # No throttle assigned to current frame, browse through roster
     if (self.throttle == None):
         if (evt.wasReleased(
                 WRButtonEvent.HOME)):  # Assign selected roster entry
             self.addressPanel.selectRosterEntry()
             return
         if (evt.wasReleased(WRButtonEvent.PLUS)):  # Next roster entry
             selectedIndex = self.addressPanel.getRosterSelectedIndex()
             self.addressPanel.setIcon(False)
             self.addressPanel.setVisible(True)
             self.addressPanel.setRosterSelectedIndex(selectedIndex + 1)
             return
         if (evt.wasReleased(WRButtonEvent.MINUS)):  # Previous roster entry
             selectedIndex = self.addressPanel.getRosterSelectedIndex()
             self.addressPanel.setIcon(False)
             self.addressPanel.setVisible(True)
             self.addressPanel.setRosterSelectedIndex(selectedIndex - 1)
             return
     # Throttle assigned to current frame, control it
     if (self.throttle != None):
         if (evt.wasReleased(WRButtonEvent.HOME)):  # LIGHTS
             self.throttle.setF0(not self.throttle.getF0())
             return
         if (evt.wasReleased(WRButtonEvent.PLUS)):  # FORWARD
             self.throttle.setIsForward(True)
             return
         if (evt.wasReleased(WRButtonEvent.MINUS)):  # BACKWARD
             self.throttle.setIsForward(False)
             return
         # Speed control
         if (evt.isPressed(WRButtonEvent.B)):  # SPEED - increment
             self.speedAction.setSpeedIncrement(valueSpeedIncrement)
             self.speedTimer.start()
             return
         if (evt.isPressed(WRButtonEvent.A)):  # SPEED - decrement
             self.speedAction.setSpeedIncrement(-valueSpeedIncrement)
             self.speedTimer.start()
             return
         # EStop
         if (evt.isPressed(WRButtonEvent.ONE | WRButtonEvent.TWO)
             ):  # estop = button1 + button2
             self.throttle.setSpeedSetting(speedEStopSpeed)
             self.lastTimeEStop = Calendar.getInstance().getTimeInMillis(
             )  # To cancel next inputs
             self.wiiDevice.vibrateFor(750)
             return
         # Speed presets
         if (Calendar.getInstance().getTimeInMillis() - self.lastTimeEStop >
                 delay4double):  # Delay for nothing after EStop
             if ((
                     evt.wasReleased(WRButtonEvent.TWO)
             ) and  #STOP = button2 x2 or (button2 and CurrentSpeed = slow speed)
                 ((Calendar.getInstance().getTimeInMillis() -
                   self.lastTimeButton2 < delay4double) or
                  (self.throttle.getSpeedSetting() == speedSlowSpeed))):
                 self.throttle.setSpeedSetting(speedStopSpeed)
                 return
             if (evt.wasReleased(
                     WRButtonEvent.TWO)):  # SLOW SPEED = button2
                 self.throttle.setSpeedSetting(speedSlowSpeed)
                 self.lastTimeButton2 = Calendar.getInstance(
                 ).getTimeInMillis()
                 return
             if ((
                     evt.wasReleased(WRButtonEvent.ONE)
             ) and  # MAX SPEED = button1x2 or (button1 and CurrentSpeed = cruise speed)
                 ((Calendar.getInstance().getTimeInMillis() -
                   self.lastTimeButton1 < delay4double) or
                  (self.throttle.getSpeedSetting() == speedCruiseSpeed))):
                 self.throttle.setSpeedSetting(speedMaxSpeed)
                 return
             if (evt.wasReleased(
                     WRButtonEvent.ONE)):  # CRUISE SPEED = button1
                 self.throttle.setSpeedSetting(speedCruiseSpeed)
                 self.lastTimeButton1 = Calendar.getInstance(
                 ).getTimeInMillis()
                 return
Beispiel #41
0
 def start(self, event):
     self.started = Calendar.getInstance().getTimeInMillis()
     self.label.setText('Running')
    def execute(self):
        if self.canManage() == False:
            self.addActionError(u"需要系统内容管理员进行管理。")
            return self.ERROR

        evaluationPlanId = self.params.safeGetIntParam("evaluationPlanId")
        today = Calendar.getInstance()
        request.setAttribute("currentYear", today.get(Calendar.YEAR))
        request.setAttribute("currentMonth", today.get(Calendar.MONTH))
        evaluationService = __spring__.getBean("evaluationService")
        evaluationPlan = evaluationService.getEvaluationPlanById(
            evaluationPlanId)
        if request.getMethod() == "POST":
            evaluationYear = self.params.safeGetIntParam("year")
            evaluationSemester = self.params.safeGetIntParam("semester")
            evaluationTimes = self.params.safeGetIntParam("times")
            startDate = self.params.safeGetStringParam("startDate")
            endDate = self.params.safeGetStringParam("endDate")
            enabled = self.params.safeGetIntParam("enabled")
            gradeId = self.params.getIntParamZeroAsNull("gradeId")
            subjectId = self.params.getIntParamZeroAsNull("subjectId")
            userCount = self.params.safeGetIntParam("userCount")
            startTime = self.params.safeGetIntParam("startTime")
            endTime = self.params.safeGetIntParam("endTime")
            # 规范数据
            if evaluationSemester != 0: evaluationSemester = 1
            if enabled == 0:
                enabled = False
            else:
                enabled = True

            if startTime < 0 or startTime > 23:
                self.addActionError(U"开始时间超过了范围。")
                return self.ERROR
            if endTime < 0 or endTime > 23:
                self.addActionError(U"结束时间超过了范围。")
                return self.ERROR
            if startTime < 10:
                st = "0" + str(startTime)
            else:
                st = str(startTime)

            if endTime < 10:
                et = "0" + str(endTime)
            else:
                et = str(endTime)

            try:
                sd = SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(startDate +
                                                                   " " + st +
                                                                   ":00:00")
            except:
                self.addActionError(U"输入的开始日期格式不正确,应当是: '年年年年-月月-日日' 格式")
                return self.ERROR
            try:
                ed = SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(endDate +
                                                                   " " + et +
                                                                   ":00:00")
            except:
                self.addActionError(U"输入的结束日期格式不正确,应当是: '年年年年-月月-日日' 格式")
                return self.ERROR

            if evaluationPlan == None:
                evaluationPlan = EvaluationPlan()
            evaluationPlan.setEvaluationYear(evaluationYear)
            evaluationPlan.setEvaluationSemester(evaluationSemester)
            evaluationPlan.setEvaluationTimes(evaluationTimes)
            evaluationPlan.setMetaSubjectId(subjectId)
            evaluationPlan.setMetaGradeId(gradeId)
            evaluationPlan.setStartDate(sd)
            evaluationPlan.setEndDate(ed)
            evaluationPlan.setUserCount(userCount)
            evaluationPlan.setEnabled(enabled)

            evaluationService.saveOrUpdateEvaluationPlan(evaluationPlan)
            return self.SUCCESS

        if evaluationPlan != None:
            request.setAttribute("evaluationPlan", evaluationPlan)
        self.putSubjectList()
        self.putGradeList()
        return "/WEB-INF/ftl/evaluation/evaluation_plan_edit.ftl"
    def onTalk(self, npc, player):
        htmltext = "<html><body>You are either not on a quest that involves this NPC, or you don't meet this NPC's minimum quest requirements.</body></html>"
        st = player.getQuestState(qn)
        if not st: return htmltext

        npcId = npc.getNpcId()
        cond = st.getInt("cond")
        id = st.getState()
        if npcId == KANEMIKA:
            if cond == 0:
                reset = st.get("reset")
                remain = 0
                if reset and reset.isdigit():
                    remain = long(reset) - System.currentTimeMillis()
                if remain <= 0:
                    if player.getLevel() >= 80:
                        htmltext = "32650-01.htm"
                    else:
                        htmltext = "32650-00.htm"
                        st.exitQuest(True)
                else:
                    htmltext = "32650-09.htm"
            elif cond == 1:
                if st.getQuestItemsCount(EVIDENCE_OF_MIGRATION) >= 1:
                    htmltext = "32650-07.htm"
                else:
                    htmltext = "32650-06.htm"
            elif cond == 2 and st.getQuestItemsCount(
                    EVIDENCE_OF_MIGRATION) == 10:
                htmltext = "32650-08.htm"
                st.giveItems(ADENA, 65000)
                st.takeItems(EVIDENCE_OF_MIGRATION, 10)
                st.setState(State.COMPLETED)
                st.unset("cond")
                st.exitQuest(False)
                st.playSound("ItemSound.quest_finish")
                reset = Calendar.getInstance()
                reset.set(Calendar.MINUTE, RESET_MIN)
                # if time is >= RESET_HOUR - roll to the next day
                if reset.get(Calendar.HOUR_OF_DAY) >= RESET_HOUR:
                    reset.add(Calendar.DATE, 1)
                reset.set(Calendar.HOUR_OF_DAY, RESET_HOUR)
                st.set("reset", str(reset.getTimeInMillis()))
        elif cond == 1 and npcId == WARRIOR_NPC:
            if st.getRandom(100) < 50:
                htmltext = "32651-01.htm"
                st.giveItems(EVIDENCE_OF_MIGRATION, 1)
                st.playSound("ItemSound.quest_itemget")
                npc.getAI().setIntention(
                    CtrlIntention.AI_INTENTION_MOVE_TO,
                    L2CharPosition(npc.getX() + 100,
                                   npc.getY() + 100, npc.getZ(), 0))
                npc.getSpawn().decreaseCount(npc)
                npc.deleteMe()
                if st.getQuestItemsCount(EVIDENCE_OF_MIGRATION) == 10:
                    st.set("cond", "2")
                    st.playSound("ItemSound.quest_middle")
            else:
                htmltext = ""
                player.sendPacket(
                    ExShowScreenMessage(
                        1, 0, 5, 0, 1, 0, 0, 2, 4000, 1,
                        "The grave robber warrior has been filled with dark energy and is attacking you!"
                    ))
                warrior = st.addSpawn(WARRIOR_MON, npc.getX(), npc.getY(),
                                      npc.getZ(), npc.getHeading(), True,
                                      600000)
                warrior.setRunning()
                warrior.addDamageHate(player, 0, 999)
                warrior.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK,
                                             player)
                if st.getRandom(100) < 50:
                    npc.broadcastPacket(
                        NpcSay(npc.getObjectId(), 0, npc.getNpcId(),
                               "...Grunt... oh..."))
                    npc.getSpawn().decreaseCount(npc)
                    npc.deleteMe()
                else:
                    npc.broadcastPacket(
                        NpcSay(npc.getObjectId(), 0, npc.getNpcId(),
                               "Grunt... What's... wrong with me..."))
                    npc.getSpawn().decreaseCount(npc)
                    npc.deleteMe()
        return htmltext
months = {
    1: 'Jan',
    2: 'Feb',
    3: 'Mar',
    4: 'Apr',
    5: 'May',
    6: 'Jun',
    7: 'Jul',
    8: 'Aug',
    9: 'Sep',
    10: 'Oct',
    11: 'Nov',
    12: 'Dec'
}

TIMESTAMP = "%02d_%s_%04d" % (Calendar.getInstance().get(
    Calendar.DAY_OF_MONTH), months[Calendar.getInstance().get(Calendar.MONTH) +
                                   1], Calendar.getInstance().get(
                                       Calendar.YEAR))

TIMESTAMPSHORT = "%02d%s%02d" % (
    Calendar.getInstance().get(Calendar.DAY_OF_MONTH),
    months[Calendar.getInstance().get(Calendar.MONTH) + 1],
    Calendar.getInstance().get(Calendar.YEAR) - 2000)

TIMESTAMPREV = "%04d-%02d-%02d" % (Calendar.getInstance().get(
    Calendar.YEAR), Calendar.getInstance().get(
        Calendar.MONTH) + 1, Calendar.getInstance().get(Calendar.DAY_OF_MONTH))

#TIMESTAMP   = "%d%d%d%d%d%d%d" % (Calendar.getInstance().get(Calendar.YEAR)-2000,
#                                  Calendar.getInstance().get(Calendar.MONTH),
#                                  Calendar.getInstance().get(Calendar.DAY_OF_MONTH),
Beispiel #45
0
	def calendar(self):
		c = Calendar.getInstance()
		c.setTime(JDate())
		return c
Beispiel #46
0
 def start(self, event):
     self.started = Calendar.getInstance().getTimeInMillis()
     self.label.setText("Running")
Beispiel #47
0
    def __getitem__(self, key):
        if isinstance(key, basestring):
            coldata = self.data.getColumnData(key)
            if coldata.getDataType().isNumeric():
                return MIArray(ArrayUtil.array(coldata.getDataValues()))
            elif coldata.getDataType() == DataTypes.Date:
                vv = coldata.getData()
                r = []
                cal = Calendar.getInstance()
                for v in vv:
                    cal.setTime(v)
                    year = cal.get(Calendar.YEAR)
                    month = cal.get(Calendar.MONTH) + 1
                    day = cal.get(Calendar.DAY_OF_MONTH)
                    hour = cal.get(Calendar.HOUR_OF_DAY)
                    minute = cal.get(Calendar.MINUTE)
                    second = cal.get(Calendar.SECOND)
                    dt = datetime.datetime(year, month, day, hour, minute,
                                           second)
                    r.append(dt)
                return r
            else:
                return MIArray(ArrayUtil.array(coldata.getData()))

        hascolkey = True
        if isinstance(key, tuple):
            ridx = key[0]
            cidx = key[1]
            if isinstance(ridx, int) and isinstance(cidx, int):
                if ridx < 0:
                    ridx = self.shape[0] + ridx
                if cidx < 0:
                    cidx = self.shape[1] + cidx
                return self.data.getValue(ridx, cidx)
            elif isinstance(ridx, int) and isinstance(cidx, basestring):
                if ridx < 0:
                    ridx = self.shape[0] + ridx
                return self.data.getValue(ridx, cidx)
        else:
            key = (key, slice(None))
            hascolkey = False

        k = key[0]
        if isinstance(k, int):
            sidx = k
            if sidx < 0:
                sidx = self.shape[0] + sidx
            eidx = sidx + 1
            step = 1
            rowkey = Range(sidx, eidx, step)
        elif isinstance(k, slice):
            if isinstance(k.start, basestring):
                t = miutil.str2date(k.start)
                t = miutil.jdate(t)
                sidx = self.data.getTimeIndex(t)
                if sidx < 0:
                    sidx = 0
            else:
                sidx = 0 if k.start is None else k.start
                if sidx < 0:
                    sidx = self.shape[0] + sidx
            if isinstance(k.stop, basestring):
                t = miutil.str2date(k.stop)
                t = miutil.jdate(t)
                eidx = self.data.getTimeIndex(t) + 1
                if eidx < 0:
                    eidx = self.shape[0]
            else:
                eidx = self.shape[0] if k.stop is None else k.stop
                if eidx < 0:
                    eidx = self.shape[0] + eidx
            step = 1 if k.step is None else k.step
            rowkey = Range(sidx, eidx, step)
        elif isinstance(k, list):
            if isinstance(k[0], basestring):
                tlist = []
                for tstr in k:
                    t = miutil.jdate(miutil.str2date(tstr))
                    idx = self.data.getTimeIndex_Ex(t)
                    if idx >= 0:
                        tlist.append(idx)
                rowkey = tlist
            else:
                rowkey = k
        else:
            return None

        tcolname = self.data.getTimeColName()
        if not hascolkey:
            r = self.data.select(rowkey)
            if r.findColumn(tcolname) is None:
                r = TableData(r)
            else:
                r = TimeTableData(r, tcolname)
            return PyTableData(r)

        k = key[1]
        if isinstance(k, int):
            sidx = k
            if sidx < 0:
                sidx = self.shape[1] + sidx
            eidx = sidx + 1
            step = 1
            colkey = Range(sidx, eidx, step)
        elif isinstance(k, slice):
            sidx = 0 if k.start is None else k.start
            if sidx < 0:
                sidx = self.shape[1] + sidx
            eidx = self.shape[1] if k.stop is None else k.stop
            if eidx < 0:
                eidx = self.shape[1] + eidx
            step = 1 if k.step is None else k.step
            colkey = Range(sidx, eidx, step)
        elif isinstance(k, list):
            if isinstance(k[0], basestring):
                cols = self.data.findColumns(k)
            else:
                cols = self.data.findColumns_Index(k)
            colkey = cols
        elif isinstance(k, basestring):
            rows = self.data.getRows(rowkey)
            coldata = self.data.getColumnData(rows, k)
            if coldata.getDataType().isNumeric():
                return MIArray(ArrayUtil.array(coldata.getDataValues()))
            else:
                return MIArray(ArrayUtil.array(coldata.getData()))
        else:
            return None

        r = self.data.select(rowkey, colkey)
        if r.findColumn(tcolname) is None:
            r = TableData(r)
        else:
            r = TimeTableData(r, tcolname)
        return PyTableData(r)
Beispiel #48
0
def aoristicClock(store,
                  nameFieldHour,
                  nameFieldDay,
                  rangeHoursParameter,
                  rangeDaysParameter,
                  expression,
                  xi=0,
                  yi=0,
                  proportion=1,
                  selfStatus=None):
  
  i18nManager = ToolsLocator.getI18nManager()
  
  centroid = geom.createPoint(geom.D2, xi, yi)

  if rangeHoursParameter == "":
      rangeHoursParameter = "0-23"
      
  if rangeDaysParameter == "":
      rangeDaysParameter = "0-6"
      
  try:
    rangeHours = processRangeHoursParameter(rangeHoursParameter)
  except:
    rangeHours = processRangeHoursParameter("0-23")

  try:
    rangeDays = processRangeDaysParameter(rangeDaysParameter)
  except:
    rangeDays = processRangeDaysParameter("0-6")

  days = len(rangeDays)
  hours = len(rangeHours)

  internalRadius = 1*proportion
  half_step = 90
  default_segs = 15
  separationGaps = 1
  centerTopSector = False
  radiusInterval = 1*proportion
  iLabel = True
  createSectorLabel=True
  labelOnlyFirstSector = True
  dayOrderRange = [ Calendar.MONDAY,
          Calendar.TUESDAY,
          Calendar.WEDNESDAY,
          Calendar.THURSDAY,
          Calendar.FRIDAY,
          Calendar.SATURDAY,
          Calendar.SUNDAY
          ]
  
  dayNames = {Calendar.MONDAY:i18nManager.getTranslation("_Monday"),
          Calendar.TUESDAY:i18nManager.getTranslation("_Tuesday"),
          Calendar.WEDNESDAY:i18nManager.getTranslation("_Wednesday"),
          Calendar.THURSDAY:i18nManager.getTranslation("_Thursday"),
          Calendar.FRIDAY:i18nManager.getTranslation("_Friday"),
          Calendar.SATURDAY:i18nManager.getTranslation("_Saturday"),
          Calendar.SUNDAY:i18nManager.getTranslation("_Sunday")
          }

  # Prepare schema
  newSchema = gvsig.createFeatureType()
  newSchema.append("LABEL", "STRING", 20)
  newSchema.append("VALUE", "DOUBLE", 20,5)
  newSchema.append("DAY", "INTEGER", 10)
  newSchema.append("HOUR", "INTEGER", 10)
  newSchema.append("ROTATION", "DOUBLE", 10,5)
  newSchema.append("GEOMETRY", "GEOMETRY")
  newSchema.get("GEOMETRY").setGeometryType(POLYGON, D2)
  ringShape = gvsig.createShape(newSchema)

  # Point-label shape
  pointSchema = gvsig.createFeatureType(ringShape.getFeatureStore().getDefaultFeatureType())
  pointSchema.append("STRVALUE", "STRING", 20)
  pointSchema.get("GEOMETRY").setGeometryType(POINT, D2)
  pointShape = gvsig.createShape(pointSchema)
  pointStore=pointShape.getFeatureStore()
  pointShape.edit()
  
  # Vars
  ringStore = ringShape.getFeatureStore()
  ringShape.edit()

  ring_num = days
  
  step_angle = 360.0 / hours
  if centerTopSector:
    half_step = half_step + (step_angle/2) #-((default_segs*gaps)/2)

  idx_side = 0

  
  if internalRadius > 0:
    radius = internalRadius
  # Prepare radiusInterval
  if radiusInterval > 0:
      radius_interval = radiusInterval 
  else:
      radius_interval = (radius / ring_num)*proportion
  last = None
  gaps = 0
  if selfStatus!=None: selfStatus.setRangeOfValues(0,len(rangeHours))
  processText = i18nManager.getTranslation("_Processing")
  for position in range(0, len(rangeHours)): #xrange(0, hours):
    if selfStatus!=None: 
      selfStatus.setProgressText(processText + ": " + str(position)+" / "+str(int(len(rangeHours))))
      if selfStatus.isCanceled() == True:
        ringShape.finishEditing()
        return True
    i = rangeHours[position]
    if len(rangeHours)==(position+1):
      rangePosition = 0
    else:
      rangePosition = position+1
    if i != (rangeHours[rangePosition]-1):
      if i==23 and rangeHours[rangePosition]==0:
        gaps = 0
      else:
        gaps=separationGaps
    else:
      gaps=0
    correction_from_deg = (((step_angle/default_segs)*0)/2)
    correction_to_deg = (((step_angle/default_segs)*gaps)/2)
  
    from_deg = half_step - (idx_side * step_angle) - correction_from_deg
    to_deg = half_step - ((idx_side + 1) * step_angle) + correction_to_deg
    
    rin = (radius+(radius_interval*(1)))*proportion
    rout = radius*proportion
    rin, rout
    prering = create_ring_cell(centroid, from_deg, to_deg, rin, rout, default_segs).centroid()

    for iring, day in enumerate(rangeDays, 1): #range(0, dayOrderRange)
      #day = rangeDays[iring]
      new = ringStore.createNewFeature()
      rin = radius+(radius_interval*(iring+1))
      rout = radius+(radius_interval*iring)
      ring = create_ring_cell(centroid, from_deg, to_deg, rin, rout,  default_segs)
      #new.set("LABEL", fields[iring])
      #new.set("VALUE", feature.get(fields[iring]))
      #rotation = ((from_deg + to_deg) / 2)-90
      rotation = from_deg - 90
      if -90 < rotation < -240:
        rotation+=180
      new.set("ROTATION", rotation)
      new.set("HOUR", i)
      new.set("DAY", day)
      new.set("GEOMETRY", ring)
      ringStore.insert(new)
      if iLabel==True and labelOnlyFirstSector==True:
        pointLocation = getRingInitVertex(ring,centroid, rout,radius_interval, from_deg, proportion)
        newFeaturePoint = pointStore.createNewFeature()
        newFeaturePoint.set("LABEL", day)
        #newFeaturePoint.set("VALUE", feature.get(fields[iring]))
        newFeaturePoint.set("STRVALUE", dayNames[day])
        newFeaturePoint.set("ROTATION", rotation)
        newFeaturePoint.set("HOUR", i)
        newFeaturePoint.set("DAY", day)
        newFeaturePoint.set("GEOMETRY", pointLocation)
        pointStore.insert(newFeaturePoint)
        
    if createSectorLabel==True:
      pointLocation = getRingInitVertex(ring,centroid, rout+radius_interval,radius_interval, from_deg, proportion)
      newFeaturePoint = pointStore.createNewFeature()
      newFeaturePoint.set("LABEL", i)
      newFeaturePoint.set("VALUE", 0)
      newFeaturePoint.set("STRVALUE", " "+str(i)+":00")
      newFeaturePoint.set("ROTATION", from_deg -90)
      newFeaturePoint.set("HOUR", i)
      #newFeaturePoint.set("DAY", iring)
      newFeaturePoint.set("GEOMETRY", pointLocation)
      pointStore.insert(newFeaturePoint)
      #if gaps>0: #create anotation end of gaps time
      #  pointLocation = getRingInitVertex(ring,centroid, rout+radius_interval,radius_interval, to_deg+(1.5*correction_to_deg), 1)
      #  newFeaturePoint = pointStore.createNewFeature()
      #  newFeaturePoint.set("LABEL", i)
      #  newFeaturePoint.set("VALUE", 0)
      #  newFeaturePoint.set("STRVALUE", " "+str(i+1)+":00")
      #  newFeaturePoint.set("ROTATION", (to_deg+(1.5*correction_to_deg))-90)
      #  newFeaturePoint.set("HOUR", i)
      #  #newFeaturePoint.set("DAY", iring)
      #  newFeaturePoint.set("GEOMETRY", pointLocation)
      #  pointStore.insert(newFeaturePoint)
    if labelOnlyFirstSector:
      labelOnlyFirstSector = False
    idx_side  += 1
  ringShape.commit()

  ###
  ### GET VALUES
  ###
  if store.getSelection().getSize()!=0:
    fset = store.getSelection()
  elif (expression!=None and not expression.isEmpty()): #.getPhrase() != '':
    evaluator = DALLocator.getDataManager().createExpresion(expression)
    #evaluator = expressionEvaluatorManager.createEvaluator(expression)
    fq = store.createFeatureQuery()
    fq.addFilter(evaluator)
    fq.retrievesAllAttributes()
    fset = store.getFeatureSet(fq)
  else:
    fset = store.getFeatureSet()
 
  ###
  ### INIT DICT 
  ###
  
  dictValues = {}
  for d in dayOrderRange:
    dictHour={}
    for h in range(0,24):
      dictHour[h] = 0
    dictValues[d] = dictHour

  ###
  ### FILL DICT
  ###
  for f in fset:
    dateFieldHour = f.get(nameFieldHour) #getFieldAsDate(f.get(nameFieldHour), patternHour)
    dateFieldDay = f.get(nameFieldDay) #getFieldAsDate(f.get(nameFieldDay), patternDay)
    
    if isinstance(dateFieldDay, Date) and isinstance(dateFieldHour, Date):
      cal = Calendar.getInstance()
      cal.setTime(dateFieldDay)
      day = cal.get(Calendar.DAY_OF_WEEK)
      cal = Calendar.getInstance()
      cal.setTime(dateFieldHour)
      hour = cal.get(Calendar.HOUR_OF_DAY)
      dictValues[day][hour] += 1
  
  ###
  ### FILL SHAPE WITH VALUES
  ###
  ringShape.edit()
  store = ringShape.getFeatureStore()
  fset = store.getFeatureSet()
  for f in fset:
    e = f.getEditable()
    h = f.get("HOUR")
    d = f.get("DAY")
    e.set("VALUE", dictValues[d][h])
    fset.update(e)
  
  ###
  ### FINISH
  ###
  ringShape.commit()
  ringShape.setName("Ao-Clock")
  pointShape.commit()
  pointShape.setName("Ao-Label")
  gvsig.currentView().addLayer(ringShape)
  gvsig.currentView().addLayer(pointShape)

  ###
  ### LEGEND AND LABELS
  ###
  try:
    vil = VectorialIntervalLegend(POLYGON)
    vil.setStartColor(Color.green)
    vil.setEndColor(Color.red)
    vil.setIntervalType(1)
    ii = vil.calculateIntervals(ringShape.getFeatureStore(), "VALUE", 5, POLYGON)
    
    vil.setIntervals(ii)
    vil.setClassifyingFieldTypes([7])
    ringShape.setLegend(vil)
  except:
    pass
  
  ds = LabelingFactory().createDefaultStrategy(pointShape)
  ds.setTextField("STRVALUE")
  ds.setRotationField("ROTATION")
  ds.setFixedSize(20)
  pointShape.setLabelingStrategy(ds)
  pointShape.setIsLabeled(True)
  
  leg = SingleSymbolLegend()
  leg.setShapeType(geom.POINT)
  manager = leg.getSymbolManager()
  pointSymbol = manager.createSymbol(geom.POINT)
  pointSymbol.setColor(Color.black)
  pointSymbol.setSize(0)
  leg.setDefaultSymbol(pointSymbol)
  pointShape.setLegend(leg)
  return True
Beispiel #49
0
content = {
    "data": [{
        "type":
        "defect",
        "name":
        title,
        "description":
        description,
        "severity":
        severity,
        "detected-by":
        detectedBy,
        "creation-time":
        "%s-%s-%s" % (
            str(Calendar.getInstance().get(Calendar.YEAR)),
            str(Calendar.getInstance().get(Calendar.MONTH) +
                1),  # zero indexed
            str(Calendar.getInstance().get(Calendar.DAY_OF_MONTH)),
        ),
    }]
}
for additionalField in additionalFields.keys():
    content["data"][0][additionalField] = additionalFields[additionalField]
result = alm_client.create_defect(domain, project, json.dumps(content))
defectId = result["data"][0]["id"]
output = json.dumps(result)
print "Successfully created a defect with id [ %s ]" % defectId

logout = alm_client.logout()
Beispiel #50
0
def makeTimeSeriesContainer(tsData, timeZone, pathname=None):
    '''
	Construct a TimeSeriesContainer object from a python dictionary that was
	created from a single "time-series" returned from the CWMS RADAR web
	service
	'''
    #---------------#
    # initial setup #
    #---------------#
    tsc = None
    try:
        tz = TimeZone.getTimeZone(timeZone)
        sdf8601 = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX")
        sdfHecTime = SimpleDateFormat("ddMMMyyyy, HH:mm")
        cal = Calendar.getInstance()
        for obj in sdf8601, sdfHecTime, cal:
            obj.setTimeZone(tz)
        ht = HecTime()
        times, values, qualities = [], [], []
        #------------------#
        # process the data #
        #------------------#
        if tsData.has_key("regular-interval-values"):
            #----------------------------------------#
            # regular time series (a lot to process) #
            #----------------------------------------#
            rts = tsData["regular-interval-values"]
            intvlStr = rts["interval"]
            unit = rts["unit"].split()[0]
            if intvlStr.startswith("PT"):
                intvlNum, intvlUnit = int(intvlStr[2:-1]), intvlStr[-1]
                try:
                    factor, field = {
                        "M": (1, Calendar.MINUTE),
                        "H": (60, Calendar.HOUR_OF_DAY)
                    }[intvlUnit]
                except KeyError:
                    raise Exception("Unexpected interval: %s" % intvlStr)
            else:
                intvlNum, intvlUnit = int(intvlStr[1:-1]), intvlStr[-1]
                try:
                    factor, field = {
                        "Y": (1440 * 365, Calendar.YEAR),
                        "M": (1440 * 30, Calendar.MONTH),
                        "D": (1440, Calendar.DATE)
                    }[intvlUnit]
                except KeyError:
                    raise Exception("Unexpected interval: %s" % intvlStr)
            intvl = intvlNum * factor
            segmentCount = rts["segment-count"]
            cal.setTimeInMillis(
                sdf8601.parse(rts["segments"][0]["first-time"]).getTime())
            for i in range(segmentCount):
                for j in range(rts["segments"][i]["value-count"]):
                    ht.set(sdfHecTime.format(cal.getTimeInMillis()))
                    v, q = rts["segments"][i]["values"][j]
                    times.append(ht.value())
                    values.append(v)
                    qualities.append(q)
                    cal.add(field, intvlNum)
                if i < segmentCount - 1:
                    nextBegin = sdf8601.parse(
                        rts["segments"][i + 1]["first-time"]).getTime()
                    time = cal.getTimeInMillis()
                    while time < nextBegin:
                        ht.set(sdfHecTime.format(time))
                        times.append(ht.value())
                        values.append(Constants.UNDEFINED)
                        qualities.append(0)
                        cal.add(field, intvlNum)
                        time = cal.getTimeInMillis()
        elif tsData.has_key("irregular-interval-values"):
            #------------------------------#
            # irregular time series (easy) #
            #------------------------------#
            its = tsData["irregular-interval-values"]
            unit = its["unit"].split()[0]
            intvl = 0
            for t, v, q in its["values"]:
                ht.set(sdfHecTime.format(sdf8601.parse(t)))
                times.append(ht.value())
                values.append(v)
                qualities.append(q)
        else:
            raise Exception("Time series has no values")
        #--------------------------------------------------#
        # code common to regular and irregular time series #
        #--------------------------------------------------#
        tsc = TimeSeriesContainer()
        tsc.times = times
        tsc.values = values
        tsc.quality = qualities
        tsc.numberValues = len(times)
        tsc.startTime = times[0]
        tsc.endTime = times[-1]
        tsc.interval = intvl
        tsc.units = unit
        tsc.timeZoneID = timeZone
        tsc.timeZoneRawOffset = tz.getRawOffset()

        name = tsData["name"]
        loc, param, paramType, intv, dur, ver = name.split(".")
        if pathname:
            #---------------------------#
            # use pathname if specified #
            #---------------------------#
            A, B, C, D, E, F = 1, 2, 3, 4, 5, 6
            parts = pathname.split("/")
            parts[D] = ''
            tsc.fullName = "/".join(parts)
            tsc.watershed = parts[A]
            try:
                tsc.location, tsc.subLocation = parts[B].split("-", 1)
            except:
                tsc.location = parts[B]
            try:
                tsc.parameter, tsc.subParameter = parts[C].split("-", 1)
            except:
                tsc.parameter = parts[C]
            try:
                tsc.version, tsc.subVersion = parts[F].split("-", 1)
            except:
                tsc.version = parts[F]
        else:
            #--------------------------------------#
            # no pathname, use CWMS time series id #
            #--------------------------------------#
            try:
                tsc.location, tsc.subLocation = loc.split("-", 1)
            except:
                tsc.location = loc
            try:
                tsc.parameter, tsc.subParameter = param.split("-", 1)
            except:
                tsc.parameter = param
            try:
                tsc.version, tsc.subVersion = ver.split("-", 1)
            except:
                tsc.version = ver
        tsc.type = {
            "Total": "PER-CUM",
            "Max": "PER-MAX",
            "Min": "PER-MIN",
            "Const": "INST-VAL",
            "Ave": "PER-AVER",
            "Inst": ("INST-VAL", "INST-CUM")[param.startswith("Precip")]
        }[paramType]
    except:
        output(traceback.format_exc())
    return tsc
Beispiel #51
0
# author: CMS CORD
####################################
from __future__ import with_statement

import re
import codecs
import logger
from java.io import File, BufferedWriter, FileWriter
from java.util import Calendar

##############################################
########      VARIABLES             ##########
##############################################
SCRIPT_NAME = "pushToXml.py"
TIMESTAMP = "%d%d%d%d%d%d%d" % (
    Calendar.getInstance().get(Calendar.YEAR) - 2000,
    Calendar.getInstance().get(Calendar.MONTH), Calendar.getInstance().get(
        Calendar.DAY_OF_MONTH), Calendar.getInstance().get(
            Calendar.HOUR_OF_DAY), Calendar.getInstance().get(Calendar.MINUTE),
    Calendar.getInstance().get(Calendar.SECOND), Calendar.getInstance().get(
        Calendar.MILLISECOND))


def replace(str):

    # replace mode=""
    str = re.sub("mode=\"\w+\"\s+", "", str)

    # replace mamId with ucmdb_id
    str = re.sub("\smamId=\"", " ucmdb_id=\"", str)
Beispiel #52
0
 def run(self):
     self.sync.acquire()
     evt = self.evt
     self.sync.release()
     if (self.speedTimer != None):
         self.speedTimer.stop()  # In any case
     # ThrottleFrames
     if (evt.wasReleased(WRButtonEvent.RIGHT)):  # NEXT
         self.getContext().nextThrottleFrame()
     if (evt.wasReleased(WRButtonEvent.LEFT)):  # PREVIOUS
         self.getContext().previousThrottleFrame()
     if (evt.wasReleased(WRButtonEvent.UP)):  # NEXT RUNNING
         self.getContext().nextRunningThrottleFrame()
     if (evt.wasReleased(WRButtonEvent.DOWN)):  # PREVIOUS RUNNING
         self.getContext().previousRunningThrottleFrame()
     # No throttle assigned to current frame, browse through roster
     if (self.throttle == None):
         if (evt.wasReleased(
                 WRButtonEvent.HOME)):  # Assign selected roster entry
             self.addressPanel.selectRosterEntry()
             return
         if (evt.wasReleased(WRButtonEvent.PLUS)):  # Next roster entry
             selectedIndex = self.addressPanel.getRosterSelectedIndex()
             self.addressPanel.setIcon(False)
             self.addressPanel.setVisible(True)
             self.addressPanel.setRosterSelectedIndex(selectedIndex + 1)
             return
         if (evt.wasReleased(WRButtonEvent.MINUS)):  # Previous roster entry
             selectedIndex = self.addressPanel.getRosterSelectedIndex()
             self.addressPanel.setIcon(False)
             self.addressPanel.setVisible(True)
             self.addressPanel.setRosterSelectedIndex(selectedIndex - 1)
             return
     # Throttle assigned to current frame, control it
     if (self.throttle != None):
         # Speed control
         if (evt.isPressed(WRButtonEvent.B)):  # SPEED - increment
             self.speedAction.setSpeedIncrement(valueSpeedIncrement)
             self.speedTimer.start()
         if (evt.isPressed(WRButtonEvent.A)):  # SPEED - decrement
             self.speedAction.setSpeedIncrement(-valueSpeedIncrement)
             self.speedTimer.start()
         # EStop
         if (evt.isPressed(WRButtonEvent.PLUS
                           | WRButtonEvent.MINUS)):  # estop = + & -
             self.throttle.setSpeedSetting(speedEStopSpeed)
             self.lastTimeEStop = Calendar.getInstance().getTimeInMillis(
             )  # To cancel next inputs
             self.wiiDevice.vibrateFor(750)
         # Directions
         if (evt.wasReleased(WRButtonEvent.PLUS)):  # FORWARD
             self.throttle.setIsForward(True)
         if (evt.wasReleased(WRButtonEvent.MINUS)):  # BACKWARD
             self.throttle.setIsForward(False)
         # Home : F0
         if (evt.wasReleased(WRButtonEvent.HOME)):  # LIGHTS
             if not ((self.addressPanel.getRosterEntry() != None) and
                     (self.advFunctions.call(
                         self.addressPanel.getRosterEntry(), "0", False,
                         self.throttle) != None)):
                 self.throttle.setF0(not self.throttle.getF0())
         # Wiimote 1 & 2 buttons
         if (evt.isPressed(WRButtonEvent.ONE)):
             if not ((self.addressPanel.getRosterEntry() != None) and
                     (self.advFunctions.call(
                         self.addressPanel.getRosterEntry(), "1", True,
                         self.throttle) != None)):
                 pass  # default F1 not momentary (switch only on Release, do nothing here)
         if (evt.wasReleased(WRButtonEvent.ONE)):
             if not ((self.addressPanel.getRosterEntry() != None) and
                     (self.advFunctions.call(
                         self.addressPanel.getRosterEntry(), "1", False,
                         self.throttle) != None)):
                 self.throttle.setF1(
                     not self.throttle.getF1())  # default F1 not momentary
         if (evt.isPressed(WRButtonEvent.TWO)):
             if not ((self.addressPanel.getRosterEntry() != None) and
                     (self.advFunctions.call(
                         self.addressPanel.getRosterEntry(), "2", True,
                         self.throttle) != None)):
                 self.throttle.setF2(True)  # default F2 momentary
         if (evt.wasReleased(WRButtonEvent.TWO)):
             if not ((self.addressPanel.getRosterEntry() != None) and
                     (self.advFunctions.call(
                         self.addressPanel.getRosterEntry(), "2", False,
                         self.throttle) != None)):
                 self.throttle.setF2(False)
Beispiel #53
0
 def stop(self, event):
     elapsed = Calendar.getInstance().getTimeInMillis() - self.started
     self.label.setText("Elapsed: %.2f seconds" % (float(elapsed) / 1000.0))
Beispiel #54
0
def format_time_as_year_month_day(t):
    from java.util import Calendar, TimeZone
    gmtCal = Calendar.getInstance(TimeZone.getTimeZone('GMT'))
    gmtCal.setTime(t.date)
    return "%d,%d,%d"%(gmtCal.get(Calendar.YEAR),gmtCal.get(Calendar.MONTH),gmtCal.get(Calendar.DATE))
Beispiel #55
0
def format_time_as_year_month_day(t):
    from java.util import Calendar, TimeZone
    gmtCal = Calendar.getInstance(TimeZone.getTimeZone('GMT'))
    gmtCal.setTime(t.date)
    return "%d,%d,%d"%(gmtCal.get(Calendar.YEAR),gmtCal.get(Calendar.MONTH),gmtCal.get(Calendar.DATE))
Beispiel #56
0
def toDate(value):
    if value == None: return None
    ca = Calendar.getInstance()
    ca.clear()
    ca.set(value.year, value.month - 1, value.day)
    return ca.getTime()