[50a3f7]: / modules / RESTAPI / RAPIManager.py

Download this file

120 lines (104 with data), 4.7 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
#!/usr/bin/env python
import sys
sys.path.insert(0, "/home/skjena/cancerTherapy/modules/RESTAPI/mutationDnnWeb")
import django
from django.conf import settings
#settings.configure()
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mutationDnnWeb.settings")
django.setup()
#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "RESTAPI.mutationDnnWeb.mutationDnnWeb.settings")
#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "RESTAPI.mutationDnnWeb.mutationDnnWeb.settings")
#django.setup()
#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "RESTAPI.mutationDnnWeb.mutationDnnWeb.settings")
#import sys
#sys.path.insert(0, "/home/skjena/cancerTherapy/modules")
#os.environ['DJANGO_SETTINGS_MODULE'] = 'RESTAPI.mutationDnnWeb.mutationDnnWeb.settings'
import socket
from Status.Status import Status
from mutationDnnWeb.models import V1, State, Run, Arguments, Features, Settings
from mutationDnnWeb.serializers import V1Serializer, ArgSerializer, StateSerializer, RunSerializer, FeatureSerializer, SettingsSerializer
from typings.network import Network
class RAPIManager():
def __init__(self):
self.status = Status("RAPIManager")
self.djangostatus = self.isRunning()
self.network = Network()
self.networkstate = False
def getArguments(self):
self.status.message(1, "getArguments(self)")
model = Arguments.objects.get(id=3)
self.network.arguments.learningRate = model.learningRate
self.network.arguments.activation = model.activation
self.network.arguments.regularization = model.regularization
self.network.arguments.regularizationRate = model.regularizationRate
self.network.arguments.problemType = model.problemType
self.status.message(0, "getArguments(self)")
return self.network.arguments
def getState(self):
self.status.message(1, "getState(self)")
model = State.objects.get(id=1)
self.network.state.batchSize = model.batchSize
self.network.state.noise = model.noise
self.network.state.trainToTestRatio = model.trainToTestRatio
self.network.state.numHiddenLayers = model.numHiddenLayers
self.network.state.networkShape = model.networkShape
self.status.message(0, "getState(self)")
return self.network.state
def getFeatures(self):
self.status.message(1, "getFeatures(self)")
model = Features.objects.get(id=1)
self.network.features.cXa = model.cXa
self.network.features.cXg = model.cXg
self.network.features.cXt = model.cXt
self.network.features.tXa = model.tXa
self.network.features.tXg = model.tXg
self.network.features.tXc = model.tXc
self.status.message(0, "getFeatures(self)")
return self.network.features
def getRun(self):
self.status.message(1, "getRun(self)")
model = Run.objects.get(id=1)
self.network.run.reset = model.reset
self.network.run.play = model.play
self.network.run.nextButton = model.nextButton
self.network.run.showTestData = model.showTestData
self.network.run.discretize = model.discretize
self.status.message(0, "getRun(self)")
return self.network.run
def getSettings(self):
self.status.message(1, "getSettings(self)")
model = Settings.objects.get(id=1)
self.network.settings.dataset = model.dataset
self.network.settings.weights = model.weights
self.network.settings.biases = model.biases
self.status.message(0, "getSettings(self)")
return self.network.settings
def populate(self):
if self.djangostatus == False:
self.isRunning()
return self.networkstate
self.status.message(1, "populate(self)")
self.network.arguments = self.getArguments()
self.network.state = self.getState()
self.network.settings = self.getSettings()
self.network.features = self.getFeatures()
self.network.run = self.getRun()
self.status.message(7)
self.networkstate = True
self.status.message(0, "populate(self)")
return self.networkstate
def isRunning(self):
self.status.message(1, "isRunning(self)")
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
result = sock.connect_ex(('0.0.0.0',80))
sock.close()
if result == 0:
self.djangostatus = True
self.status.message(9)
else:
self.djangostatus = False
self.status.message(8)
self.status.message(0, "isRunning(self)")
return self.djangostatus
#!/usr/bin/env python