# ******* WARNING - AUTO GENERATED CODE - DO NOT EDIT *******
from .VmomiSupport import CreateDataType, CreateManagedType
from .VmomiSupport import CreateEnumType
from .VmomiSupport import AddVersion, AddVersionParent
from .VmomiSupport import AddBreakingChangesInfo
from .VmomiSupport import F_LINK, F_LINKABLE
from .VmomiSupport import F_OPTIONAL, F_SECRET
from .VmomiSupport import newestVersions, stableVersions
from .VmomiSupport import publicVersions, dottedVersions
from .VmomiSupport import oldestVersions

AddVersion("vmodl.version.version0", "", "", 0, "vim25")
AddVersion("vmodl.version.version1", "", "", 0, "vim25")
AddVersion("vmodl.version.version2", "", "", 0, "vim25")
AddVersion("cis.kv.version.version1", "keyvalue", "1.0", 0, "")
AddVersionParent("vmodl.version.version0", "vmodl.version.version0")
AddVersionParent("vmodl.version.version1", "vmodl.version.version0")
AddVersionParent("vmodl.version.version1", "vmodl.version.version1")
AddVersionParent("vmodl.version.version2", "vmodl.version.version0")
AddVersionParent("vmodl.version.version2", "vmodl.version.version1")
AddVersionParent("vmodl.version.version2", "vmodl.version.version2")
AddVersionParent("cis.kv.version.version1", "vmodl.version.version0")
AddVersionParent("cis.kv.version.version1", "vmodl.version.version1")
AddVersionParent("cis.kv.version.version1", "vmodl.version.version2")
AddVersionParent("cis.kv.version.version1", "cis.kv.version.version1")

newestVersions.Add("cis.kv.version.version1")
stableVersions.Add("cis.kv.version.version1")
publicVersions.Add("cis.kv.version.version1")
dottedVersions.Add("cis.kv.version.version1")
oldestVersions.Add("cis.kv.version.version1")

CreateDataType("cis.kv.Change", "KVChange", "vmodl.DynamicData", "cis.kv.version.version1", [("provider", "string", "cis.kv.version.version1", 0), ("changeType", "cis.kv.Change.ChangeType", "cis.kv.version.version1", 0), ("key", "string", "cis.kv.version.version1", 0), ("issuingNodeID", "string", "cis.kv.version.version1", 0), ("value", "cis.kv.Value", "cis.kv.version.version1", F_OPTIONAL), ("batchID", "string", "cis.kv.version.version1", F_OPTIONAL), ("conflictResolution", "boolean", "cis.kv.version.version1", F_OPTIONAL), ("transactionLogGen", "long", "cis.kv.version.version1", 0)])
CreateEnumType("cis.kv.Change.ChangeType", "KVChangeChangeType", "cis.kv.version.version1", ["PUT", "DELETE"])
CreateDataType("cis.kv.ChangeSet", "KVChangeSet", "vmodl.DynamicData", "cis.kv.version.version1", [("changes", "cis.kv.Change[]", "cis.kv.version.version1", F_OPTIONAL)])
CreateDataType("cis.kv.Conflict", "KVConflict", "vmodl.DynamicData", "cis.kv.version.version1", [("key", "string", "cis.kv.version.version1", 0), ("currentValue", "cis.kv.Value", "cis.kv.version.version1", F_OPTIONAL), ("conflictValues", "cis.kv.OptionalValue[]", "cis.kv.version.version1", 0)])
CreateDataType("cis.kv.ConflictResolution", "KVConflictResolution", "vmodl.DynamicData", "cis.kv.version.version1", [("key", "string", "cis.kv.version.version1", 0), ("correctedValue", "string", "cis.kv.version.version1", F_OPTIONAL), ("operationID", "string", "cis.kv.version.version1", F_OPTIONAL), ("expectedGeneration", "long", "cis.kv.version.version1", F_OPTIONAL), ("expectedLastWriter", "string", "cis.kv.version.version1", F_OPTIONAL)])
CreateDataType("cis.kv.ConflictSet", "KVConflictSet", "vmodl.DynamicData", "cis.kv.version.version1", [("conflicts", "cis.kv.Conflict[]", "cis.kv.version.version1", F_OPTIONAL)])
CreateDataType("cis.kv.CreateFlags", "KVCreateFlags", "vmodl.DynamicData", "cis.kv.version.version1", [("isTransient", "boolean", "cis.kv.version.version1", 0), ("range", "cis.kv.ReplicationRange", "cis.kv.version.version1", 0), ("readPrivilege", "string", "cis.kv.version.version1", F_OPTIONAL), ("writePrivilege", "string", "cis.kv.version.version1", F_OPTIONAL)])
CreateDataType("cis.kv.DeleteSpec", "KVDeleteSpec", "vmodl.DynamicData", "cis.kv.version.version1", [("key", "string", "cis.kv.version.version1", 0), ("operationID", "string", "cis.kv.version.version1", F_OPTIONAL), ("expectedGeneration", "long", "cis.kv.version.version1", F_OPTIONAL), ("expectedLastWriter", "string", "cis.kv.version.version1", F_OPTIONAL)])
CreateDataType("cis.kv.Entry", "KVEntry", "vmodl.DynamicData", "cis.kv.version.version1", [("key", "string", "cis.kv.version.version1", 0), ("value", "cis.kv.Value", "cis.kv.version.version1", 0)])
CreateManagedType("cis.kv.Manager", "KVManager", "vmodl.ManagedObject", "cis.kv.version.version1", None, [("getServiceID", "GetServiceID", "cis.kv.version.version1", (), (0, "string", "string"), "System.Anonymous", None), ("getAllProviders", "GetAllProviders", "cis.kv.version.version1", (), (F_OPTIONAL, "string[]", "string[]"), "System.Anonymous", None), ("getCreateFlags", "GetCreateFlags", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),), (0, "cis.kv.CreateFlags", "cis.kv.CreateFlags"), "System.Anonymous", ["cis.kv.fault.NotFoundFault", ]), ("addProvider", "AddProvider", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),("flags", "cis.kv.CreateFlags", "cis.kv.version.version1", 0, None),), (0, "void", "void"), "KeyValueStore.Management", ["cis.kv.fault.AlreadyExistsFault", ]), ("deleteProvider", "DeleteProvider", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),), (0, "void", "void"), "KeyValueStore.Management", ["cis.kv.fault.NotFoundFault", ]), ("put", "Put", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),("update", "cis.kv.PutSpec", "cis.kv.version.version1", 0, None),), (0, "cis.kv.Change", "cis.kv.Change"), None, ["cis.kv.fault.OptimisticLockingFault", "cis.kv.fault.NotFoundFault", ]), ("batchPut", "BatchPut", "cis.kv.version.version1", (("update", "cis.kv.MultiPutSpec", "cis.kv.version.version1", 0, None),), (0, "cis.kv.ChangeSet", "cis.kv.ChangeSet"), None, ["cis.kv.fault.OptimisticLockingFault", "cis.kv.fault.NotFoundFault", ]), ("delete", "Delete", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),("deleteSpec", "cis.kv.DeleteSpec", "cis.kv.version.version1", 0, None),), (F_OPTIONAL, "cis.kv.Change", "cis.kv.Change"), None, ["cis.kv.fault.OptimisticLockingFault", "cis.kv.fault.NotFoundFault", ]), ("batchDelete", "BatchDelete", "cis.kv.version.version1", (("deleteSpec", "cis.kv.MultiDeleteSpec", "cis.kv.version.version1", 0, None),), (0, "cis.kv.ChangeSet", "cis.kv.ChangeSet"), None, ["cis.kv.fault.OptimisticLockingFault", "cis.kv.fault.NotFoundFault", ]), ("get", "Get", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),("key", "string[]", "cis.kv.version.version1", 0, None),), (0, "cis.kv.OptionalValue[]", "cis.kv.OptionalValue[]"), None, ["cis.kv.fault.NotFoundFault", ]), ("hasChanged", "HasChanged", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),("key", "string", "cis.kv.version.version1", 0, None),("generation", "long", "cis.kv.version.version1", 0, None),("lastWriter", "string", "cis.kv.version.version1", F_OPTIONAL, None),), (0, "boolean", "boolean"), None, ["cis.kv.fault.NotFoundFault", ]), ("findKeys", "FindKeys", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),("sc", "cis.kv.SearchClause", "cis.kv.version.version1", 0, None),), (F_OPTIONAL, "string[]", "string[]"), None, ["cis.kv.fault.NotFoundFault", ]), ("findKeyValues", "FindKeyValues", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),("sc", "cis.kv.SearchClause", "cis.kv.version.version1", 0, None),), (F_OPTIONAL, "cis.kv.Entry[]", "cis.kv.Entry[]"), None, ["cis.kv.fault.NotFoundFault", ]), ("registerSubscriptionByPrefix", "RegisterSubscriptionByPrefix", "cis.kv.version.version1", (("subscriptionID", "string", "cis.kv.version.version1", 0, None),("provider", "string", "cis.kv.version.version1", 0, None),("keyPrefix", "string", "cis.kv.version.version1", 0, None),), (0, "cis.kv.ChangeSet", "cis.kv.ChangeSet"), None, ["cis.kv.fault.AlreadyExistsFault", "cis.kv.fault.NotFoundFault", "cis.kv.fault.InvalidPatternFault", ]), ("registerSubscriptionByList", "RegisterSubscriptionByList", "cis.kv.version.version1", (("subscriptionID", "string", "cis.kv.version.version1", 0, None),("provider", "string", "cis.kv.version.version1", 0, None),("keys", "string[]", "cis.kv.version.version1", 0, None),), (0, "cis.kv.ChangeSet", "cis.kv.ChangeSet"), None, ["cis.kv.fault.AlreadyExistsFault", "cis.kv.fault.NotFoundFault", "cis.kv.fault.InvalidPatternFault", ]), ("deleteSubscription", "DeleteSubscription", "cis.kv.version.version1", (("subscriptionID", "string", "cis.kv.version.version1", 0, None),), (0, "void", "void"), None, ["cis.kv.fault.NotFoundFault", ]), ("getSubscriptions", "GetSubscriptions", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", F_OPTIONAL, None),), (0, "string[]", "string[]"), None, ["cis.kv.fault.NotFoundFault", ]), ("checkSubscription", "CheckSubscription", "cis.kv.version.version1", (("subscriptionID", "string", "cis.kv.version.version1", 0, None),), (0, "cis.kv.ChangeSet", "cis.kv.ChangeSet"), None, ["cis.kv.fault.NotFoundFault", "cis.kv.fault.SubscriptionClosedFault", ]), ("getConflictSet", "GetConflictSet", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),("subscriptionID", "string", "cis.kv.version.version1", F_OPTIONAL, None),), (0, "cis.kv.ConflictSet", "cis.kv.ConflictSet"), None, ["cis.kv.fault.NotFoundFault", ]), ("resolveConflict", "ResolveConflict", "cis.kv.version.version1", (("provider", "string", "cis.kv.version.version1", 0, None),("cr", "cis.kv.ConflictResolution", "cis.kv.version.version1", 0, None),), (0, "cis.kv.Change", "cis.kv.Change"), None, ["cis.kv.fault.NotFoundFault", ]), ("replicatedUpdate", "ReplicatedUpdate", "cis.kv.version.version1", (("changeset", "cis.kv.ChangeSet", "cis.kv.version.version1", F_OPTIONAL, None),("initialSync", "boolean", "cis.kv.version.version1", 0, None),("sourceServiceUUID", "string", "cis.kv.version.version1", 0, None),), (0, "void", "void"), None, ["cis.kv.fault.InitialSyncIncompleteFault", ]), ("hasSenderStarted", "HasSenderStarted", "cis.kv.version.version1", (("targetService", "string", "cis.kv.version.version1", 0, None),), (0, "boolean", "boolean"), None, None), ("getGlobalProviders", "GetGlobalProviders", "cis.kv.version.version1", (), (F_OPTIONAL, "string[]", "string[]"), "System.Anonymous", None), ("suspend", "Suspend", "cis.kv.version.version1", (), (0, "void", "void"), None, None), ("resume", "Resume", "cis.kv.version.version1", (), (0, "void", "void"), None, None), ("createSubscriptionByPrefix", "CreateSubscriptionByPrefix", "cis.kv.version.version1", (("subscriptionID", "string", "cis.kv.version.version1", 0, None),("provider", "string", "cis.kv.version.version1", 0, None),("keyPrefix", "string", "cis.kv.version.version1", 0, None),), (0, "cis.kv.ChangeSet", "cis.kv.ChangeSet"), None, ["cis.kv.fault.AlreadyExistsFault", "cis.kv.fault.NotFoundFault", "cis.kv.fault.InvalidPatternFault", ]), ("createSubscriptionByList", "CreateSubscriptionByList", "cis.kv.version.version1", (("subscriptionID", "string", "cis.kv.version.version1", 0, None),("provider", "string", "cis.kv.version.version1", 0, None),("keys", "string[]", "cis.kv.version.version1", 0, None),), (0, "cis.kv.ChangeSet", "cis.kv.ChangeSet"), None, ["cis.kv.fault.AlreadyExistsFault", "cis.kv.fault.NotFoundFault", "cis.kv.fault.InvalidPatternFault", ]), ("getChanges", "GetChanges", "cis.kv.version.version1", (("subscriptionID", "string", "cis.kv.version.version1", 0, None),), (0, "cis.kv.ChangeSet", "cis.kv.ChangeSet"), None, ["cis.kv.fault.NotFoundFault", "cis.kv.fault.SubscriptionClosedFault", ]), ("getNextChanges", "GetNextChanges", "cis.kv.version.version1", (("subscriptionID", "string", "cis.kv.version.version1", 0, None),), (0, "cis.kv.ChangeSet", "cis.kv.ChangeSet"), None, ["cis.kv.fault.NotFoundFault", "cis.kv.fault.SubscriptionClosedFault", ])])
CreateDataType("cis.kv.MultiDeleteSpec", "KVMultiDeleteSpec", "vmodl.DynamicData", "cis.kv.version.version1", [("batchDeleteSpec", "cis.kv.MultiDeleteSpec.BatchDeleteSpec[]", "cis.kv.version.version1", 0)])
CreateDataType("cis.kv.MultiDeleteSpec.BatchDeleteSpec", "KVMultiDeleteSpecBatchDeleteSpec", "vmodl.DynamicData", "cis.kv.version.version1", [("provider", "string", "cis.kv.version.version1", 0), ("deletes", "cis.kv.DeleteSpec[]", "cis.kv.version.version1", 0)])
CreateDataType("cis.kv.MultiPutSpec", "KVMultiPutSpec", "vmodl.DynamicData", "cis.kv.version.version1", [("batchPutSpec", "cis.kv.MultiPutSpec.BatchPutSpec[]", "cis.kv.version.version1", 0)])
CreateDataType("cis.kv.MultiPutSpec.BatchPutSpec", "KVMultiPutSpecBatchPutSpec", "vmodl.DynamicData", "cis.kv.version.version1", [("provider", "string", "cis.kv.version.version1", 0), ("puts", "cis.kv.PutSpec[]", "cis.kv.version.version1", 0)])
CreateDataType("cis.kv.OptionalValue", "KVOptionalValue", "vmodl.DynamicData", "cis.kv.version.version1", [("value", "cis.kv.Value", "cis.kv.version.version1", F_OPTIONAL)])
CreateDataType("cis.kv.PutSpec", "KVPutSpec", "vmodl.DynamicData", "cis.kv.version.version1", [("key", "string", "cis.kv.version.version1", 0), ("value", "string", "cis.kv.version.version1", 0), ("operationID", "string", "cis.kv.version.version1", F_OPTIONAL), ("expectedGeneration", "long", "cis.kv.version.version1", F_OPTIONAL), ("expectedLastWriter", "string", "cis.kv.version.version1", F_OPTIONAL), ("checkForCreate", "boolean", "cis.kv.version.version1", F_OPTIONAL)])
CreateDataType("cis.kv.ReplicationRange", "KVReplicationRange", "vmodl.DynamicData", "cis.kv.version.version1", [("scope", "cis.kv.ReplicationRange.Scope", "cis.kv.version.version1", 0)])
CreateEnumType("cis.kv.ReplicationRange.Scope", "KVReplicationRangeScope", "cis.kv.version.version1", ["LOCAL", "SITE", "GLOBAL"])
CreateDataType("cis.kv.SearchClause", "KVSearchClause", "vmodl.DynamicData", "cis.kv.version.version1", [("keyPrefix", "string", "cis.kv.version.version1", 0), ("value", "string", "cis.kv.version.version1", F_OPTIONAL), ("startIndex", "int", "cis.kv.version.version1", F_OPTIONAL), ("maxResults", "int", "cis.kv.version.version1", F_OPTIONAL), ("skipFirst", "boolean", "cis.kv.version.version1", F_OPTIONAL)])
CreateDataType("cis.kv.Value", "KVValue", "vmodl.DynamicData", "cis.kv.version.version1", [("content", "string", "cis.kv.version.version1", 0), ("generation", "long", "cis.kv.version.version1", 0), ("lastWriterNodeID", "string", "cis.kv.version.version1", 0), ("timestamp", "long", "cis.kv.version.version1", 0)])
CreateDataType("cis.kv.fault.AlreadyExistsFault", "KVAlreadyExistsFault", "vmodl.MethodFault", "cis.kv.version.version1", None)
CreateDataType("cis.kv.fault.InitialSyncIncompleteFault", "KVInitialSyncIncompleteFault", "vmodl.MethodFault", "cis.kv.version.version1", None)
CreateDataType("cis.kv.fault.InvalidPatternFault", "KVInvalidPatternFault", "vmodl.MethodFault", "cis.kv.version.version1", None)
CreateDataType("cis.kv.fault.NotAuthenticatedFault", "KVNotAuthenticatedFault", "vmodl.RuntimeFault", "cis.kv.version.version1", None)
CreateDataType("cis.kv.fault.NotFoundFault", "KVNotFoundFault", "vmodl.MethodFault", "cis.kv.version.version1", None)
CreateDataType("cis.kv.fault.OptimisticLockingFault", "KVOptimisticLockingFault", "vmodl.MethodFault", "cis.kv.version.version1", [("key", "string", "cis.kv.version.version1", 0)])
CreateDataType("cis.kv.fault.OwnerInvalidFault", "KVOwnerInvalidFault", "vmodl.MethodFault", "cis.kv.version.version1", [("key", "string", "cis.kv.version.version1", 0)])
CreateDataType("cis.kv.fault.SubscriptionClosedFault", "KVSubscriptionClosedFault", "vmodl.MethodFault", "cis.kv.version.version1", None)
CreateDataType("cis.kv.fault.SystemSuspendedFault", "KVSystemSuspendedFault", "vmodl.RuntimeFault", "cis.kv.version.version1", [("key", "string", "cis.kv.version.version1", 0)])
