Prechádzať zdrojové kódy

2to3 changes for state dir.

Bentley James Oakes 7 rokov pred
rodič
commit
b9cbba23a2

+ 1 - 1
state/modelverse_state/main.py

@@ -50,7 +50,7 @@ class ModelverseState(object):
                     f.write("a_%s [label=\"a_%s (%s)\"];\n" % (n, n, self.values[n]))
                 else:
                     f.write("a_%s [label=\"a_%s\"];\n" % (n, n))
-            for i, e in self.edges.items():
+            for i, e in list(self.edges.items()):
                 f.write("%s -> %s [label=\"%s\"];\n" % (e[0], e[1], i))
             f.write("}")
         return self.root

+ 1 - 1
state/modelverse_state/rdf.py

@@ -95,7 +95,7 @@ class ModelverseState(object):
                             """,
             }
 
-        for k, v in self.prepared_queries.items():
+        for k, v in list(self.prepared_queries.items()):
             self.prepared_queries[k] = prepareQuery(self.prepared_queries[k], initNs={"MV": self.mv})
 
         self.root = self.parse(bootfile)

+ 28 - 28
state/mvs_server/python_runtime/statecharts_core.py

@@ -504,7 +504,7 @@ class EventLoop:
 		if now - self.last_print > 1.0:
 			behind_schedule = now - simulated_now
 			if behind_schedule > 0.1:
-				print "Warning: running %.f ms behind schedule" % (behind_schedule*1000.0)
+				print("Warning: running %.f ms behind schedule" % (behind_schedule*1000.0))
 				self.last_print = now
 		if self.last_time:
 			delta = simulated_now - self.last_time
@@ -573,20 +573,20 @@ class ThreadsControllerBase(ControllerBase):
 		
 	def handleInput(self, delta):
 		with self.input_condition:
-		    ControllerBase.handleInput(self, delta)
+			ControllerBase.handleInput(self, delta)
 		
 	def start(self):
 		self.thread.start()
 		
 	def stop(self):
 		with self.input_condition:
-		    self.stop_thread = True
-		    self.input_condition.notifyAll()
+			self.stop_thread = True
+			self.input_condition.notifyAll()
 
 	def getWaitTime(self):
 		"""Compute time untill earliest next event"""
 		with self.input_condition:
-		    wait_time = ControllerBase.getWaitTime(self)
+			wait_time = ControllerBase.getWaitTime(self)
 
 		if wait_time == INFINITY :
 			if self.done :
@@ -598,20 +598,20 @@ class ThreadsControllerBase(ControllerBase):
 
 	def handleWaiting(self):
 		with self.input_condition:
-		    wait_time = self.getWaitTime()
-		    if(wait_time <= 0.0):
-			    return
-		    
-		    if wait_time == INFINITY :
-			    if self.keep_running :
-				    self.input_condition.wait() #Wait for a signals
-			    else :
-				    self.stop_thread = True
-		    
-		    elif wait_time != 0.0 :
-			    reduced_wait_time = wait_time - (time() - self.last_recorded_time)
-			    if reduced_wait_time > 0.0 :
-				    self.input_condition.wait(reduced_wait_time)    
+			wait_time = self.getWaitTime()
+			if(wait_time <= 0.0):
+				return
+
+			if wait_time == INFINITY :
+				if self.keep_running :
+					self.input_condition.wait() #Wait for a signals
+				else :
+					self.stop_thread = True
+
+			elif wait_time != 0.0 :
+				reduced_wait_time = wait_time - (time() - self.last_recorded_time)
+				if reduced_wait_time > 0.0 :
+					self.input_condition.wait(reduced_wait_time)
 
 	def run(self):
 		self.last_recorded_time  = time()
@@ -620,15 +620,15 @@ class ThreadsControllerBase(ControllerBase):
 		
 		while True:
 			with self.input_condition:
-			    self.handleInput(last_iteration_time)
+				self.handleInput(last_iteration_time)
 			#Compute the new state based on internal events
 			self.object_manager.stepAll(last_iteration_time)
 			
 			self.handleWaiting()
 			
 			with self.input_condition:
-			    if self.stop_thread : 
-				    break
+				if self.stop_thread :
+					break
 			
 			previous_recorded_time = self.last_recorded_time
 			self.last_recorded_time = time()
@@ -639,12 +639,12 @@ class ThreadsControllerBase(ControllerBase):
 
 	def addInput(self, input_event, time_offset = 0.0):
 		with self.input_condition:
-		    super(ThreadsControllerBase, self).addInput(input_event, time_offset)
-		    self.input_condition.notifyAll()
+			super(ThreadsControllerBase, self).addInput(input_event, time_offset)
+			self.input_condition.notifyAll()
 
 	def addEventList(self, event_list):
 		with self.input_condition:
-		    super(ThreadsControllerBase, self).addEventList(event_list)
+			super(ThreadsControllerBase, self).addEventList(event_list)
 
 class StatechartSemantics:
 	# Big Step Maximality
@@ -722,7 +722,7 @@ class RuntimeClassBase(object):
 		if not self.is_stable:
 			return 0.0
 		if self.timers:
-			return min(self.events.getEarliestTime(), min(self.timers.itervalues()))
+			return min(self.events.getEarliestTime(), min(self.timers.values()))
 		return self.events.getEarliestTime()
 
 	def processBigStepOutput(self):
@@ -740,7 +740,7 @@ class RuntimeClassBase(object):
 
 		# decrease timers time
 		next_timers = {}
-		for (key,value) in self.timers.iteritems() :
+		for (key,value) in self.timers.items() :
 			time = value - delta
 			if time <= 0.0 :
 				self.addEvent( Event("_" + str(key) + "after"), time)
@@ -758,7 +758,7 @@ class RuntimeClassBase(object):
 			self.processBigStepOutput()
 
 	def inState(self, nodes):
-		for c in self.current_state.itervalues():
+		for c in self.current_state.values():
 			new_nodes = []
 			for n in nodes:
 				if not (n in c):

+ 1 - 1
state/mvs_server/python_sccd_compiler/generic_language_constructs.py

@@ -757,7 +757,7 @@ def MakeDeclaration(obj):
 	if isinstance(obj, DeclarationBase):
 		return obj
 	else:
-		raise Exception("Can't turn argument of type '" + str(type(stmt)) + "' into DeclarationBase.")
+		raise Exception("Can't turn argument of type '" + str(type(obj)) + "' into DeclarationBase.")
 
 def MakeActualParameters(obj):
 	if isinstance(obj, ActualParameters):

+ 3 - 3
state/mvs_server/python_sccd_compiler/utils.py

@@ -10,17 +10,17 @@ class Logger(object):
 	@staticmethod   
 	def showError(error):
 		if(Logger.verbose > -1) :
-			print "ERROR : " + error
+			print("ERROR : " + error)
 				
 	@staticmethod
 	def showWarning(warning):
 		if(Logger.verbose > 0) :
-			print "WARNING : " + warning
+			print("WARNING : " + warning)
 			
 	@staticmethod	
 	def showInfo(info):
 		if(Logger.verbose > 1) :
-			print "INFO : " + info
+			print("INFO : " + info)
 
 #######################
 

+ 18 - 13
state/mvs_server/server.py

@@ -11,8 +11,13 @@ MvK Server interface that receives events through the Socket2Event layer.
 """
 
 from python_runtime.statecharts_core import *
-import urlparse
-import urllib
+try:
+	import urlparse
+	import urllib
+except ImportError:
+	import urllib.parse
+	import urllib.request, urllib.parse, urllib.error
+
 import sys
 import traceback
 import json
@@ -930,7 +935,7 @@ class Socket(RuntimeClassBase):
 	def transition_Root_connected_queueing_queueing_1(self, parameters):
 		data = parameters[0]
 		self.exit_Root_connected_queueing_queueing()
-		post_data = "&".join(["%s=%s" % (k, v) for k, v in data.iteritems()])
+		post_data = "&".join(["%s=%s" % (k, v) for k, v in data.items()])
 		self.send_data += "HTTP/1.0 200 OK\r\n"
 		self.send_data += "Content-Length: %s\r\n" % len(post_data)
 		self.send_data += "Content-Type: %s; charset=UTF-8\r\n" % "text/plain"
@@ -1026,21 +1031,21 @@ class Socket(RuntimeClassBase):
 	def transition_Root_connected_parsing_wait_for_payload_1(self, parameters):
 		self.exit_Root_connected_parsing_wait_for_payload()
 		if self.length == float('inf'):
-		    data = self.received_data
-		    self.received_data = ""
+			data = self.received_data
+			self.received_data = ""
 		else:
-		    data = self.received_data[:self.length]
-		    self.received_data = self.received_data[self.length:]
+			data = self.received_data[:self.length]
+			self.received_data = self.received_data[self.length:]
 		
 		# We support POST data only, so everything is in the data
 		try:
-		    params = dict([p.split('=') for p in data.split('&')])
-		    data = {k: urllib.unquote_plus(v) for k, v in params.iteritems()}
+			params = dict([p.split('=') for p in data.split('&')])
+			data = {k: urllib.unquote_plus(v) for k, v in params.items()}
 		except:
-		    import traceback
-		    traceback.print_exc()
-		    print("Could not parse: " + str(data))
-		    data = {}
+			import traceback
+			traceback.print_exc()
+			print("Could not parse: " + str(data))
+			data = {}
 		self.big_step.outputEventOM(Event("narrow_cast", None, [self, 'parent', Event("HTTP_output", None, [self.association_name, data])]))
 		self.combo_step.setArenaChanged(self.Root_connected_parsing)
 		self.enter_Root_connected_parsing_wait_for_header()