rework of the server side
main change: the same server may be used for several instruments - client classes are 'Interactors' dealing with the parameters etc. - methods from history are added to the clients + improvements on the js client side
This commit is contained in:
@ -1,9 +1,43 @@
|
||||
#!/usr/bin/env python3
|
||||
#!/usr/bin/env python
|
||||
|
||||
import sys
|
||||
import pathlib
|
||||
sys.path.insert(0, str((pathlib.Path(__file__) / '..').resolve()))
|
||||
import webserver
|
||||
from influxgraph import SecopInfluxInstrument
|
||||
import argparse
|
||||
import socket
|
||||
from webserver import server
|
||||
from base import Client
|
||||
from influxgraph import InfluxGraph
|
||||
from secop import SecopInteractor
|
||||
from sehistory.seinflux import SEHistory
|
||||
|
||||
webserver.instrument = webserver.main(SecopInfluxInstrument)
|
||||
|
||||
def parseArgv(argv):
|
||||
parser = argparse.ArgumentParser(
|
||||
description="start a webserver for history and interaction",
|
||||
)
|
||||
# loggroup = parser.add_mutually_exclusive_group()
|
||||
# loggroup.add_argument("-v", "--verbose",
|
||||
# help="Output lots of diagnostic information",
|
||||
# action='store_true', default=False)
|
||||
# loggroup.add_argument("-q", "--quiet", help="suppress non-error messages",
|
||||
# action='store_true', default=False)
|
||||
parser.add_argument("port",
|
||||
type=str,
|
||||
help="port number to serve\n")
|
||||
# parser.add_argument('-d',
|
||||
# '--daemonize',
|
||||
# action='store_true',
|
||||
# help='Run as daemon',
|
||||
# default=False)
|
||||
parser.add_argument('-i',
|
||||
'--instrument',
|
||||
action='store',
|
||||
help="instrument, if running on an instrument computer\n"
|
||||
"if the value is HOST, take the host name as instrument name",
|
||||
default=None)
|
||||
return parser.parse_args(argv)
|
||||
|
||||
args = parseArgv(sys.argv[1:])
|
||||
|
||||
instrument = socket.gethostname().split('.')[0] if args.instrument == 'HOST' else args.instrument
|
||||
|
||||
server.run(int(args.port), SEHistory(), InfluxGraph, Client, single_instrument=instrument, secop=SecopInteractor)
|
||||
|
Reference in New Issue
Block a user