other minor tweaks - doc generation should still be broken
[plcapi.git] / PLC / Methods / __init__.py
index 45c9228..000edba 100644 (file)
-methods = """
-AddAddressType
-AddAddressTypeToAddress
-AddBootState
-AddConfFile
-AddConfFileToNodeGroup
-AddConfFileToNode
-AddInitScript
-AddKeyType
-AddMessage
-AddNetworkMethod
-AddNetworkType
-AddNodeGroup
-AddNodeNetwork
-AddNodeNetworkSetting
-AddNodeNetworkSettingType
-AddNode
-AddNodeToNodeGroup
-AddNodeToPCU
-AddPCUProtocolType
-AddPCU
-AddPCUType
-AddPeer
-AddPersonKey
-AddPerson
-AddPersonToSite
-AddPersonToSlice
-AddRole
-AddRoleToPerson
-AddSession
-AddSiteAddress
-AddSite
-AddSliceAttribute
-AddSliceAttributeType
-AddSliceInstantiation
-AddSlice
-AddSliceToNodes
-AddSliceToNodesWhitelist
-AdmAddAddressType
-AdmAddNodeGroup
-AdmAddNodeNetwork
-AdmAddNode
-AdmAddNodeToNodeGroup
-AdmAddPersonKey
-AdmAddPerson
-AdmAddPersonToSite
-AdmAddSitePowerControlUnit
-AdmAddSite
-AdmAssociateNodeToPowerControlUnitPort
-AdmAuthCheck
-AdmDeleteAddressType
-AdmDeleteAllPersonKeys
-AdmDeleteNodeGroup
-AdmDeleteNodeNetwork
-AdmDeleteNode
-AdmDeletePersonKeys
-AdmDeletePerson
-AdmDeleteSitePowerControlUnit
-AdmDeleteSite
-AdmDisassociatePowerControlUnitPort
-AdmGenerateNodeConfFile
-AdmGetAllAddressTypes
-AdmGetAllKeyTypes
-AdmGetAllNodeNetworks
-AdmGetAllRoles
-AdmGetNodeGroupNodes
-AdmGetNodeGroups
-AdmGetNodes
-AdmGetPersonKeys
-AdmGetPersonRoles
-AdmGetPersonSites
-AdmGetPersons
-AdmGetPowerControlUnitNodes
-AdmGetPowerControlUnits
-AdmGetSiteNodes
-AdmGetSitePersons
-AdmGetSitePIs
-AdmGetSitePowerControlUnits
-AdmGetSites
-AdmGetSiteTechContacts
-AdmGrantRoleToPerson
-AdmIsPersonInRole
-AdmQueryConfFile
-AdmQueryNode
-AdmQueryPerson
-AdmQueryPowerControlUnit
-AdmQuerySite
-AdmRebootNode
-AdmRemoveNodeFromNodeGroup
-AdmRemovePersonFromSite
-AdmRevokeRoleFromPerson
-AdmSetPersonEnabled
-AdmSetPersonPrimarySite
-AdmUpdateNodeGroup
-AdmUpdateNodeNetwork
-AdmUpdateNode
-AdmUpdatePerson
-AdmUpdateSitePowerControlUnit
-AdmUpdateSite
-AnonAdmGetNodeGroups
-AuthCheck
-BlacklistKey
-BootCheckAuthentication
-BootGetNodeDetails
-BootNotifyOwners
-BootUpdateNode
-DeleteAddress
-DeleteAddressTypeFromAddress
-DeleteAddressType
-DeleteBootState
-DeleteConfFileFromNodeGroup
-DeleteConfFileFromNode
-DeleteConfFile
-DeleteInitScript
-DeleteKey
-DeleteKeyType
-DeleteMessage
-DeleteNetworkMethod
-DeleteNetworkType
-DeleteNodeFromNodeGroup
-DeleteNodeFromPCU
-DeleteNodeGroup
-DeleteNodeNetwork
-DeleteNodeNetworkSetting
-DeleteNodeNetworkSettingType
-DeleteNode
-DeletePCUProtocolType
-DeletePCU
-DeletePCUType
-DeletePeer
-DeletePersonFromSite
-DeletePersonFromSlice
-DeletePerson
-DeleteRoleFromPerson
-DeleteRole
-DeleteSession
-DeleteSite
-DeleteSliceAttribute
-DeleteSliceAttributeType
-DeleteSliceFromNodes
-DeleteSliceFromNodesWhitelist
-DeleteSliceInstantiation
-DeleteSlice
-GenerateNodeConfFile
-GetAddresses
-GetAddressTypes
-GetBootMedium
-GetBootStates
-GetConfFiles
-GetEventObjects
-GetEvents
-GetInitScripts
-GetKeys
-GetKeyTypes
-GetMessages
-GetNetworkMethods
-GetNetworkTypes
-GetNodeGroups
-GetNodeNetworkSettings
-GetNodeNetworkSettingTypes
-GetNodeNetworks
-GetNodes
-GetPCUProtocolTypes
-GetPCUs
-GetPCUTypes
-GetPeerData
-GetPeerName
-GetPeers
-GetPersons
-GetPlcRelease
-GetRoles
-GetSession
-GetSessions
-GetSites
-GetSliceAttributes
-GetSliceAttributeTypes
-GetSliceInstantiations
-GetSliceKeys
-GetSlicesMD5
-GetSlices
-GetSliceTicket
-GetSlivers
-GetWhitelist
-NotifyPersons
-NotifySupport
-RebootNode
-RefreshPeer
-ResetPassword
-SetPersonPrimarySite
-SliceCreate
-SliceDelete
-SliceExtendedInfo
-SliceGetTicket
-SliceInfo
-SliceListNames
-SliceListUserSlices
-SliceNodesAdd
-SliceNodesDel
-SliceNodesList
-SliceRenew
-SliceTicketGet
-SliceUpdate
-SliceUserAdd
-SliceUserDel
-SliceUsersList
-system.listMethods
-system.methodHelp
-system.methodSignature
-system.multicall
-UpdateAddress
-UpdateAddressType
-UpdateConfFile
-UpdateInitScript
-UpdateKey
-UpdateMessage
-UpdateNodeGroup
-UpdateNodeNetwork
-UpdateNodeNetworkSetting
-UpdateNodeNetworkSettingType
-UpdateNode
-UpdatePCUProtocolType
-UpdatePCU
-UpdatePCUType
-UpdatePeer
-UpdatePerson
-UpdateSite
-UpdateSliceAttribute
-UpdateSliceAttributeType
-UpdateSlice
-VerifyPerson
-""".split()
+#!/usr/bin/python -tt
+
+from __future__ import print_function
+
+import os
+import glob
+
+native_methods = []
+toppath = os.path.dirname(__file__)
+
+# do not blindly scan this directory, as when using devel tools
+# like `make sync` we can easily end up with more files that needed
+# which breaks in production
+
+contents = [
+    ('.', '[A-Z][a-zA-Z]*.py'),
+    ('system', '[a-zA-Z]*.py'),
+]
+
+for dir, pattern in contents:
+    prefix = len(dir) + 1
+    matches = glob.glob("{}/{}".format(dir, pattern))
+    for match in matches:
+        filename = match[prefix:][:-3]
+        python_name = filename if dir == '.' \
+            else "{}.{}".format(dir, filename)
+        native_methods.append(python_name)
+
+if __name__ == '__main__':
+    native_methods.sort()
+    print(native_methods)