1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- import sys
- import argparse
- import wrappers.modelverse as mv
- from commons import new_instance_model, new_example_model
- from sketchUI.main import run_ui
- from evolution import upload_ops
- def upload_graph_MM():
- print("Uploading graph metamodel ...")
- try:
- mv.model_delete("formalisms/graphMM")
- except mv.UnknownLocation:
- pass
- content = open("models/sketching/graphMM.mvc").read()
- mv.model_add("formalisms/graphMM", "formalisms/SimpleClassDiagrams", content)
- def upload_example_models():
- print("Uploading example models ...")
- # clear all example models
- try:
- mv.model_delete("models/example")
- except mv.UnknownLocation:
- # folder does not exist, ignore
- pass
- content = open("models/sketching/example_model_1.mvc").read()
- mv.model_add("models/example/ex1", "formalisms/graphMM", content)
- mv.verify("models/example/ex1", "formalisms/graphMM")
- content = open("models/sketching/example_model_2.mvc").read()
- mv.model_add("models/example/ex2", "formalisms/graphMM", content)
- mv.verify("models/example/ex2", "formalisms/graphMM")
- def upload_instance_model():
- print("Uploading instance model ...")
- # clear all example models
- try:
- mv.model_delete("models/instance")
- except mv.UnknownLocation:
- # folder does not exist, ignore
- pass
- content = open("models/sketching/instance_model.mvc").read()
- mv.model_add("models/instance/im1", "formalisms/graphMM", content)
- mv.verify("models/instance/im1", "formalisms/graphMM")
- if __name__ == "__main__":
- parser = argparse.ArgumentParser()
- parser.add_argument("-u", action="store_true", default=False, help="Upload models")
- parser.add_argument("-im", action="store_true", default=False, help="Instance modeling")
- parser.add_argument("-exm", action="store_true", default=False, help="Example modeling")
- parser.add_argument("-m", help="Model to open")
- args = parser.parse_args()
- mv.init()
- mv.login("admin", "admin")
- # load modelverse with necessary models?
- if args.u:
- upload_graph_MM()
- #upload_example_models()
- #upload_instance_model()
- upload_ops.upload_evolution_ops()
- # determine modeling mode
- mode = None
- if args.im and args.exm or (not args.im and not args.exm):
- print("Choose either im or exm")
- sys.exit()
- if args.im:
- mode = "IM"
- else:
- mode = "EXM"
- # open existing model?
- if args.m:
- model = args.m
- else:
- # no model to open, create an empty one
- if mode == "IM":
- model = new_instance_model()
- else:
- model = new_example_model()
- run_ui(mode, model)
- print("verify ... ")
- print(mv.verify(model, "formalisms/graphMM"))
- sys.exit(0)
|