From e8e2c45123c36466bb13e2d74be692fe6237cb7b Mon Sep 17 00:00:00 2001 From: root <Yorgo EL MOUBAYED> Date: Thu, 6 May 2021 00:03:54 +0200 Subject: [PATCH] Latest: data registration works --- .../__pycache__/dataset_model.cpython-38.pyc | Bin 1477 -> 1444 bytes dataproc/api/models/dataset_model.py | 3 +- .../__pycache__/input_view.cpython-38.pyc | Bin 7253 -> 8046 bytes dataproc/api/views/draft_view.py | 40 --------- dataproc/api/views/input_view.py | 77 +++++++++++++----- 5 files changed, 58 insertions(+), 62 deletions(-) delete mode 100644 dataproc/api/views/draft_view.py diff --git a/dataproc/api/models/__pycache__/dataset_model.cpython-38.pyc b/dataproc/api/models/__pycache__/dataset_model.cpython-38.pyc index a1c781f084a6fd7750090641a9ba13b28d1fcfbd..a646800d024a192a6ce1ddf8419afe3ebe3ff2a5 100644 GIT binary patch delta 86 zcmX@gy@Z=Ll$V!_0SG!aOiI|dkvE+Q%ykBe6l(#A$<0iv?2L0bgBdiLCU0cYnEZ+9 Ut%L|j0~ZS;8vMHXH}fe*00)r~DF6Tf delta 120 zcmZ3&eUzIwl$V!_0SH=|dJ<M`<V|Pd=LYhefw))?NTe`MZe&vBWSYa7$r#L_$vk;2 zlZIrJcuHbPVsUCod|rM^YJ5RaenDzcNoH#C<f}|?Wh8*w7&w?1S<vBkmj9b?F`r@t E0BgM*BLDyZ diff --git a/dataproc/api/models/dataset_model.py b/dataproc/api/models/dataset_model.py index 79a1a0c..1bfe01d 100644 --- a/dataproc/api/models/dataset_model.py +++ b/dataproc/api/models/dataset_model.py @@ -40,7 +40,8 @@ class Dataset(StructuredNode): """ return { - 'dataset_node_properties': { + 'dataset_node_properties': + { 'uuid': self.uuid, 'fileTemplateName': self.fileTemplateName, 'userUuid': self.userUuid, diff --git a/dataproc/api/views/__pycache__/input_view.cpython-38.pyc b/dataproc/api/views/__pycache__/input_view.cpython-38.pyc index fd32ce80796652b91774bcbc8877a0bc43afa5ae..fde9d73423dbf99cb784ee7857d547e76d49149a 100644 GIT binary patch delta 2809 zcmai0OKcle6rDF?&x{>=oWyZrCwA+kNn58a1V}$gLqnTy3H0MMw78|g^-R))!~<_8 z8*4&9$qMmnp9Dg5k*-h{AR)Sg?pReq6d^VvAysVH@DU5Pz`f6jCpfN>(VTmI@11w< z=gqwQbmEUw+Eh3k6yWdEd$(WhKXOY;lF=^@^^rzH)(`5LHDQ(Hx^yxrWV+cr`FI6m z6}X4sw$elp9ARG2$!p?=geGmWF2Zl=E?FiH(Zz(YEP|9kN+5k8eIWfH{UBwKGDroa zQnu?V=&J2o_v?YXgb1iPDr%*VY}pZ4R?(<95|^su<1*m*xePiomvxT9Wyn#v3_E^^ z6yZq?G>K~w&}6RFJ0d)f-UiUh-bP1pM6@~Tu<(ku9I&GhA6PvKrZ;}En;=`LZk1dX zCI!MTyGak~b#p`y>EZW8S$G*dR|H*y&PCX~m|e-$S++^@v&Oh-*{*NNGN>CUm_^H` zO9eX@DVU3|FWGr}&Maa?PSf*te#l%{FbZg+*!fZ@J2G~5^3q5)eST=vl_w#7$tr0h z+3a~V4NYaUBg3N`#PwPE8RJ|g=E{qPebdxkrb^K<dBL2W1zz7=amI8TFd^eYo?6B* za9M`!#yr#Hwrn-eJOz2Pzk)G#J<!HXtu^9?Jtri^{%mMwpF~q^BG#U8TcE%q6tKDe z&{nz3iMO$2>z<?=-HfQXU=1olt(hR}l@6@rV)K?+oW^EMBM~(4CU1{t##ZK{-fviO zv#E*g#!7qn^Ks9GYZoew&V@aXS*V|J19L?f%(PjU*$`+qo0g`}3_yN@5+Wf{CEgVx zLAb>K*;EN_n-_ROl15}g4>K!thf&}C%n?|LK7sHgLJz`I2u~wCgV2j`lwI);$TIc8 z54Pby+SH9!4u?=n09<45Xc>}VN%<i;!hV-~_CAX)PH_sgL4@ZJ;LR22F*cx_JbfJ1 z69|0>{Rk%kG9tw~-K~9#Z7UOctgR5R#vUl`>_;hfTm42Z6S9ZlxV%a6NF5y6jbi)e zuSJsrn$M7iq}ZLn{R5SzxxQk4(a1>U8hIOsA$F_0w}L17cHyQGjIU~D5^P^Hr7lI1 zz?WiY>ON>e&J9u~DwhU^QWrZ7#Ro#+i@Wh?HF(;<_8r_7It4`}8g3_1CiR52!4~-y z#&|V+eGqp*CQ#-c1)Yu|j3b;ycphN_;ROV~VZ0oBc#a7zKD<kgF8}6uuR?WO_Q2vl z^F6kQ-P69WtBipTv-cw%t=oQM8s`wsBOGH7B4g!ARP8Z|?=hNzC|814teSE!IR0k2 z`h8?Cd$a!A6iyeWz=zD~M)>*wqqKoNQd?On8fUi}Mtk{OYc)L$!6E356#@mD-UwGK zG@Yh_VvVggj;Hzh7r|Zb`F0X8mipMOM4BCpcF0+bnPeBD>5(Z=Gd}tfS}r5-49=id zwY}QG)>bovcJ@Vlja_V-XxLfY=S>q^bpJGUK86m@<!ZVPuyxm@>)>=s^HB2+I(Vkk z3uSh)wdTZ)a+$ccih$o|SGi#<n8jI(?kGHrF}2>Sec<S;naMuLWS%XzOt*QN)I&5( z6&E`OP&&@jX^SWGUOImC@^oZ=4C#-_rq&ob;o0$;*>plSZ<7tylc+U_cN62fmw~U6 zL15M>8Z>VkHCpl_M)AH>?S(FIT&|f!7wpEAY=gg)Wk1CCC*fZqq4G}=;hL;VjySKZ ztL)!+3z6AxvG@wT29Lnkf=|lJGl&_qAjA>MBfOcn@L=27G(Nox7+96>ez478zBrw& zw+GHQk-tIUjS89lv<ZB!g8yyI6=!MxS2L~MBwc1d3@(0JQ9L{-e%dL1Z{dU2@9(&Z zL!sCdicH(sc^-Jwx$3~8sV^-Ur?3X=5&%DgB{+}q_AV(Xi6l4-_W`&&*r8;%FQ|#+ EKd6{Hj{pDw delta 2171 zcmai#T}&fY6vyXIr|k^=09s0+EznjJ%E}7tvV4dvZfSu~*ro+!NnEV$Six?)-VP?) zuvwBd`(})L9(*t=_{M{Y8{dp38ee=PKKL?ECdQbUjXwHfjOR?dl+Rt7`So(|>HPoq zoHKL(n*3$dx$JN>2>2IXc=(3W{gE@k#vff6W0o9C3z1%UkA1vh!euL7QM}44h;3n0 z$gy`sp3>N^i2s@P*j={Ga$>u1SFE&Z(zbY?F+nruOgU+T-Dj@}X@MCZW6r$6a+aL+ z1JNSfz?D@YC!?AIQ>IjpZb@qyZL3`Am|ILPF9p-f(P%84jxQ$?H-f3y%v^dYmWoZo zW0Rj*K$Ze9B)P0yL|+jTJTUi2`vPx+3Cp^>3FicB1G9^=EQ)fIQ?$TAgV$}tX=5`L z98{8;u*qOd>4cy))GqF!&26@6I$~MU%)1u&tg#F3SiiIR@kcyB=zt$P!;qCnJytH^ zgzm_z+IoqvXStfuRM?Y;Lv0jjpq)k@#1vlTAVRQ;tN{j^1Iz=V#un&RzGZ&+T^Z<p z5f`~3)K8;}gqH}6(2c0{!@F__)*3wN7ig}B&`XFA`VbM3U%)TjR@O>9lULs^m9?ss zLqEEQ*3@K%m(_GNY8Inb;j4xa8>*SQ4J)=p<XlSwq*wPfX!v?;YY#ll7liB{=keUY zj^t+rL;13yykp<*IZU=L6*ITgh^d+tBmKj5VMsbguRl$X@}Oi(Ma;lf_EZ+!^(;i6 z#O%Nijt(|bbE3e%jt^brW}j6pRCf%YIxoHcEMaM@tn!nYch)tRarq(My6i+yQ#hH- zWYNN!7#~Lie_&TAO*hBGxEfKa@-O3<PY_-qOcJgVrU<VRD7;n}*lU`ce3ngTE~90# zr9wf?Y8$2E3B&M-<YQmJpK^pnVWIip$a63ZJ+83tuvFYA%rvRT2;Go%&CD6<CmPgb zH0YYLQM|o{4^H;2H51~5u<od5>UuQ(4gBVMj>VzBbrNFk2VoM!ni!gfg;7Hj5$BD_ z3N@q$zW3W;*W&<ROFVXkBE|^EJ5X=I4k_a951W80^D_pP?Fg!j3qL-r3}37nh(nua zHfX5N&>hdTFm}X3*fL9TbMTWV7@5amMB)jWSs)nJ25EHM8t77o_g9=h?Iej#4w_Ht zg2OxiMCzuu`y8oDXGr}cg}i^CDV0L0_hG&*dWPKRZP)HqcSg6A3G`0Zt#7J@QZZlV zr}pZg7-Pf7_o{nqWthf(EUWcu{D(g{z5gYg&61P=S6VahW&66no(y`Ts(ny>YmU?^ z(FpUtK&<Z9jB!=J7Ngs8=h!`~G=pY8bHF37hpia-N%-el>kjB;UF*d0n)t=px-gv^ zRbeHs7FCYt#u=%)Mo~t-j;9I|=1vwM?bcNci9F9;_@!G5rF?#)nCFqN?{xIBd%A@t z@Ezo%`*;XLgv*2x!Z?A>L>?zB5|V@zfl|!r<maSvq%{pUbg=32#H~_ptDsI&CCc<u ae1$RDWM_60ba%OxUOel(c)4M!tM7lmMxmMj diff --git a/dataproc/api/views/draft_view.py b/dataproc/api/views/draft_view.py deleted file mode 100644 index 5b61f33..0000000 --- a/dataproc/api/views/draft_view.py +++ /dev/null @@ -1,40 +0,0 @@ -@csrf_exempt -def storeParseDataset(data): - - """ - Creates nodes for each dataset with relative properties - """ - - try: - logger.info('CHECK FUNCTION') - Dataset.create_or_update(uuid=data['uuid'], - userUuid=data['userUuid'], - crystalUuid=data['crystalUuid'], - currentPath=data['currentPath'], - generationPath=data['generationPath'], - fileTemplateName=data['fileTemplateName'], - blStartingDate=data['blStartingDate'], - beamlineName=data['beamlineName'], - facilityName=data['facilityName']) - logger.info('CREATE OR UPDATE') - -# # dataset.save() - -# # if dataset == None: -# # datasetNew = Dataset(uuid=data['uuid'], -# # userUuid=data['userUuid'], -# # crystalUuid=data['crystalUuid'], -# # currentPath=data['currentPath'], -# # generationPath=data['generationPath'], -# # fileTemplateName=data['fileTemplateName'], -# # blStartingDate=data['blStartingDate'], -# # beamlineName=data['beamlineName'], -# # facilityName=data['facilityName']) - -# # datasetNew.save() - return JsonResponse({"Status": "INPUT REGISTERED"}) - logger.info('RETURN') - - except: - print(sys.exc_info()[0]) - return ({"STATUS": "ERROR OCCURRED WHILE REGISTERING DATASET"}) \ No newline at end of file diff --git a/dataproc/api/views/input_view.py b/dataproc/api/views/input_view.py index 77ff165..ca361fa 100644 --- a/dataproc/api/views/input_view.py +++ b/dataproc/api/views/input_view.py @@ -31,33 +31,36 @@ def storeInput(request): json_data=json.loads(request.body) json_data_dataset=json_data['dataset'] - # json_data_storagehost=json_data['storageHost'] - # json_data_user=json_data['user'] - # json_data_construct=json_data['construct'] - # json_data_computationhost=json_data['computationHost'] - # json_data_datacollection=json_data['dataCollection'] - # json_data_ocf=json_data['OCF'] + json_data_storagehost=json_data['storageHost'] + json_data_user=json_data['user'] + json_data_construct=json_data['construct'] + json_data_computationhost=json_data['computationHost'] + json_data_datacollection=json_data['dataCollection'] + json_data_ocf=json_data['construct']['OCF'] try: # Register nodes storeParseDataset(json_data_dataset) - # storeParseStorageHost(json_data_storagehost) - # storeParseUser(json_data_user) - # storeParseConstruct(json_data_construct) - # storeParseComputationHost(json_data_computationhost) - # storeParseDataCollection(json_data_datacollection) - # storeParseOCF(json_data_ocf) + storeParseStorageHost(json_data_storagehost) + storeParseUser(json_data_user) + storeParseConstruct(json_data_construct) + storeParseComputationHost(json_data_computationhost) + storeParseDataCollection(json_data_datacollection) + storeParseOCF(json_data_ocf) # Register relationships - # connectConstructUser(json_data_construct, json_data_user) - # connectConstructStorageHost(json_data_construct, json_data_storagehost) - # connectConstructComputationHost(json_data_construct, json_data_computationhost) - # connectDatasetConstruct(json_data_dataset, json_data_construct) - # connectDatasetStorageHost(json_data_dataset, json_data_storagehost) - # connectDataCollectionDataset(json_data_datacollection, json_data_dataset) + connectConstructUser(json_data_construct, json_data_user) + connectConstructStorageHost(json_data_construct, json_data_storagehost) + connectConstructComputationHost(json_data_construct, json_data_computationhost) + connectDatasetConstruct(json_data_dataset, json_data_construct) + connectDatasetStorageHost(json_data_dataset, json_data_storagehost) + connectDataCollectionDataset(json_data_datacollection, json_data_dataset) - return JsonResponse({"Status": "INPUT SUCCESSFULLY REGISTERED"}) + for input_ocf in json_data_ocf: + connectConstructOCF(json_data_construct, input_ocf) + return JsonResponse({"Status": "INPUT SUCCESSFULLY REGISTERED"}) + except : return JsonResponse({"Status":"ERROR OCCURRED"}, safe=False) @@ -69,7 +72,7 @@ def storeParseDataset(data): """ try: - dataset=Dataset.get_or_create(uuid=data['uuid'], + dataset=Dataset(uuid=data['uuid'], userUuid=data['userUuid'], crystalUuid=data['crystalUuid'], currentPath=data['currentPath'], @@ -85,6 +88,22 @@ def storeParseDataset(data): print(sys.exc_info()[0]) return ({"STATUS": "ERROR OCCURRED WHILE REGISTERING DATASET"}) +# @csrf_exempt +# def storeParseDataset(data): + +# """ +# Creates nodes for each dataset with relative properties +# """ + +# try: +# # dataset=Dataset.create_or_update({"uuid": data['uuid']}, {"facilityName": data['facilityName']}) +# Dataset.create_or_update(data.serialize) +# return dataset + +# except: +# print(sys.exc_info()[0]) +# return ({"STATUS": "ERROR OCCURRED WHILE REGISTERING DATASET"}) + @csrf_exempt def storeParseStorageHost(data): @@ -294,4 +313,20 @@ def connectDataCollectionDataset(data1, data2): return JsonResponse({"STATUS": datacollection.generates.connect(dataset)}, safe=False) except: - return JsonResponse({"STATUS": "ERROR OCCURRED WHILE CONNECTING DATA COLLECTION TO DATASET"}, safe=False) \ No newline at end of file + return JsonResponse({"STATUS": "ERROR OCCURRED WHILE CONNECTING DATA COLLECTION TO DATASET"}, safe=False) + +@csrf_exempt +def connectConstructOCF(data1, data2): + + """ + Create a relationship between a construct and an ocf + """ + + try: + construct=Construct.nodes.get(uuid=data1["uuid"]) + ocf=OCF.nodes.get(uuid=data2["uuid"]) + + return JsonResponse({"STATUS": construct.has_ocf.connect(ocf)}, safe=False) + + except: + return JsonResponse({"STATUS": "ERROR OCCURRED WHILE CONNECTING DATA COLLECTION TO DATASET"}, safe=False) -- GitLab