Select Git revision
filesystemgenerator.py

Nils Vreman authored
filesystemgenerator.py 1.45 KiB
from lib.filesystemmanager import FileSystemManager
from lib.tasksetgenerator import TasksetGenerator
class FileSystemGenerator:
def __init__(self, max_hyperperiod, nbr_tasks):
self.manager = FileSystemManager(max_hyperperiod, nbr_tasks)
self.max_hyperperiod = max_hyperperiod
self.nbr_tasks = nbr_tasks
# Generate and collect unsolved tasksets in the given category
def generate_unsolved_tasksets(self, volume, max_timeout):
# Get the ones we have that we haven't been able to solve in max_timeout minutes
tasksets = self.manager.get_all_not_solved_time(max_timeout)
# If this is less than the number we want:
# Create some more and save them
if tasksets is None or len(tasksets) < volume:
created_tasksets = self.create_tasksets(volume)
self.manager.save_tasksets(created_tasksets)
# If we created some new ones: update the ones we can run on.
if tasksets is None or len(tasksets) != self.manager.get_nbr_unsolved_tasksets():
tasksets = self.manager.get_all_not_solved_time(max_timeout)
return tasksets
# NOTE: TAKE A NEW LOOK AT THIS ONE
def load_tasksets(self, volume):
if self.manager.get_nbr_tasksets(self.max_hyperperiod, self.nbr_tasks) < volume:
pass
def create_tasksets(self, volume):
return TasksetGenerator(self.max_hyperperiod, self.nbr_tasks).generate_tasksets(volume)