wiki:GEMINIv3/gd_parser_server_usage

Version 4 (modified by Hussamuddin Nasir, 6 years ago) (diff)

--

Navigation: Up

Description

This server acts as a PHP based API interface that performs AM , Slice authority and Clearinghouse API operations on behalf of the user. In addition it also performs Manifest parsing for GEMINI and GENIDesktop so that each of the GEMINI team member does not parse rspecs making their code independent of rspec format/data changes. The PHP API calls accept data as POST/GET values and returns JSON objects of the form { "code" : <0 for success, non-zero for error> "output" : object/text }

Most of the operations require the user to authenticate themselves using a token that they can obtain on the initial communication. We will briefly explain each parser operation in the section below. This server utilizes data stored in a MySQL DB as well as data files stored on the hard disk. It utilizes two external tools namely GCF and unisencoder .

PHP API

getUserinfo.php

getSliceinfo.php

getUserinfo.php

clearUserinfo.php

fetchUserCred.php

fetchSliceCred.php

updateSliceCred.php

createMySlivers.php

deleteResources.php

createSlice.php

parseManifest.php

getAllManifests.php

manifest_parsing_json.php

getSliceExpiry.php

getSliverExpiry.php

getSliverStatus.php

listMySlivers.php

renewSlicenSlivers.php

showManifests.php

opendb.php

closedb.php

portaldb.php

config.db

logger.php

utils.db

bind_rspec_to_am.php

getAMlist.php

getLNUinfo.php

downloadManifest.php

createImage.php

deleteImage.php

getImageList.php

GCF based backend

All most all of the above PHP scripts use these python scripts that use Omni as a library to communicate with the CH, SA and AMs .

createMyImage.py

getSlicenames.py

createSlice.py

getSlicename_w_creds.py

registerSCwithUNIS.py

createSliver.py

getAllmanifest.py

getSliverStatus.py

renewSlice.py

credentialRoutines.py

lamp-sendmanifest.py

renewSlivers.py

decrypt.py

ListComponents.py

send2UNIS.py

listMyImages.py

test-common.py

listmykeys.py

whoami.py

deleteMyImage.py

getLampCACert.py

deleteResources.py

getMyCredential.py

myutils.py

getPGSliceinfo.py

getSlicecred.py