models/cluster.go
package models
// ClusterType represents the type of the cluster.
type ClusterType string
const (
// Free cluster type.
Free ClusterType = "FREE"
// Small cluster type.
Small ClusterType = "SMALL"
// Medium cluster type.
Medium ClusterType = "MEDIUM"
// Large cluster type.
Large ClusterType = "LARGE"
// Serverless cluster type.
Serverless ClusterType = "SERVERLESS"
// Devmode cluster type.
Devmode ClusterType = "DEVMODE"
)
//Product type Hazelcast Cloud clusters
type ProductTypeName string
const (
Starter ProductTypeName = "STARTER"
Enterprise ProductTypeName = "ENTERPRISE"
)
//Zone topology type for enterprise Hazelcast Cloud clusters
type ZoneType string
const (
ZoneTypeSingle ZoneType = "SINGLE"
ZoneTypeMultiple ZoneType = "MULTI"
)
//Eviction policy to be applied when the size of map grows larger than the value specified by the Max Size element described below. For more information, see [Eviction Policy](https://docs.cloud.hazelcast.com/docs/map-configurations#eviction-policy)
type EvictionPolicy string
const (
Lru EvictionPolicy = "LRU"
Lfu EvictionPolicy = "LFU"
None EvictionPolicy = "NONE"
Random EvictionPolicy = "RANDOM"
)
//Internal storage format. For more information, see [In Memory Format](https://docs.cloud.hazelcast.com/docs/replicated-map#in-memory-format)
type InMemoryFormat string
const (
Object InMemoryFormat = "OBJECT"
Binary InMemoryFormat = "BINARY"
Native InMemoryFormat = "NATIVE"
)
//Type of the value collection. For more information, see [Value Collection Type](https://docs.cloud.hazelcast.com/docs/multimap#value-collection-type)
type ValueCollectionType string
const (
Set ValueCollectionType = "SET"
List ValueCollectionType = "LIST"
)
//Sets the initial load mode. For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
type InitialLoadMode string
const (
Lazy InitialLoadMode = "LAZY"
Eager InitialLoadMode = "EAGER"
)
//Policy on how to define the map's maximum size. For more information, see [Maz Size Policy](https://docs.cloud.hazelcast.com/docs/map-configurations#max-size-policy)
type MaxSizePolicy string
const (
UsedNativeMemoryPercentage MaxSizePolicy = "USED_NATIVE_MEMORY_PERCENTAGE"
FreeNativeMemoryPercentage MaxSizePolicy = "FREE_NATIVE_MEMORY_PERCENTAGE"
)
//A policy to deal with an overloaded topic; so topic where there is no place to store new messages. For more information, see [Overload Policy](https://docs.cloud.hazelcast.com/docs/reliable-topic#reliable-topic-overload-policy
type TopicOverloadPolicy string
const (
DiscardOldest TopicOverloadPolicy = "DISCARD_OLDEST"
DiscardNewest TopicOverloadPolicy = "DISCARD_NEWEST"
Block TopicOverloadPolicy = "BLOCK"
Error TopicOverloadPolicy = "ERROR"
)
//State of the cluster that show current status.
type State string
const (
Running State = "RUNNING"
Pending State = "PENDING"
StopInProgress State = "STOP_IN_PROGRESS"
Stopped State = "STOPPED"
DeleteInProgress State = "DELETE_IN_PROGRESS"
Deleted State = "DELETED"
ScaleUpInProgress State = "SCALE_UP_IN_PROGRESS"
ScaleDownInProgress State = "SCALE_DOWN_IN_PROGRESS"
ScaleUp State = "SCALE_UP"
ScaleDown State = "SCALE_DOWN"
ResumeInProgress State = "RESUME_IN_PROGRESS"
UpdatingClusterConfig State = "UPDATING_CLUSTER_CONFIG"
UpdatingInstancePerZone State = "UPDATING_INSTANCE_PER_ZONE"
UpdatingZones State = "UPDATING_ZONES"
UpdatingHazelcastVersion State = "UPDATING_HAZELCAST_VERSION"
UpdatingInstanceType State = "UPDATING_INSTANCE_TYPE"
Failed State = "FAILED"
)
//The input for Create Starter Cluster.
type CreateStarterClusterInput struct {
//Name of the cluster.
Name string `json:"name"`
//Cloud provider of the cluster.
CloudProvider string `json:"cloudProvider"`
//Name of the region.
Region string `json:"region"`
//Cluster type of the cluster
ClusterType ClusterType `json:"clusterType"`
//Hazelcast IMDG version of the cluster.
HazelcastVersion string `json:"hazelcastVersion"`
//Total memory of the cluster.
TotalMemory float64 `json:"totalMemory"`
//Shows if auto scaling feature enabled or not.
IsAutoScalingEnabled bool `json:"isAutoScalingEnabled"`
//Shows if hot backup feature is enabled or not.
IsHotBackupEnabled bool `json:"isHotBackupEnabled"`
//Shows if hot restart feature is enabled or not.
IsHotRestartEnabled bool `json:"isHotRestartEnabled"`
//Shows if Ip whitelisting is enabled to restrict connection to the cluster or not.
IsIPWhitelistEnabled bool `json:"isIpWhitelistEnabled"`
//Shows if TLS(Transport Layer Security) is enabled while connecting to the cluster or not.
IsTLSEnabled bool `json:"isTlsEnabled"`
//Shows if Ip whitelisting is enabled to restrict connection to the cluster or not.
IPWhitelist []string `json:"ipWhitelist"`
//Data structure configuration of the cluster.
DataStructure DataStructureInput `json:"dataStructures"`
}
//The input for Get Cluster.
type GetStarterClusterInput struct {
ClusterId string `json:"clusterId"`
}
// CreateServerlessClusterInput represents input parameters set for serverless cluster creation.
type CreateServerlessClusterInput struct {
// Name of the cluster.
Name string `json:"name"`
// Name of the region.
Region string `json:"region"`
// Type of the cluster
ClusterType ClusterType `json:"clusterType"`
}
// GetServerlessClusterInput represents input parameters set for serverless cluster retrieval.
type GetServerlessClusterInput struct {
ClusterId string `json:"clusterId"`
}
//The input for Create Enterprise Cluster.
type CreateEnterpriseClusterInput struct {
//Name of the cluster.
Name string `json:"name"`
//Cloud provider of the cluster.
CloudProvider string `json:"cloudProvider"`
//Name of the region.
Region string `json:"region"`
//Zone type of the cluster.
ZoneType ZoneType `json:"zoneType"`
//Instance type of the cluster
InstanceType string `json:"instanceType"`
//Number of Hazelcast cluster members per zone.
InstancePerZone int `json:"instancePerZone"`
//Hazelcast IMDG version of the cluster.
HazelcastVersion string `json:"hazelcastVersion"`
//Public access enabled flag of the cluster
IsPublicAccessEnabled bool `json:"isPublicAccessEnabled"`
//CIDR Range of the cluster network.
CidrBlock string `json:"cidrBlock"`
//Native memory of the cluster.
NativeMemory int `json:"nativeMemory"`
//Shows if auto scaling feature enabled or not.
IsAutoScalingEnabled bool `json:"isAutoScalingEnabled"`
//Shows if hot restart feature is enabled or not.
IsHotRestartEnabled bool `json:"isHotRestartEnabled"`
//Shows if hot backup feature is enabled or not.
IsHotBackupEnabled bool `json:"isHotBackupEnabled"`
//Shows if TLS(Transport Layer Security) is enabled while connecting to the cluster or not.
IsTLSEnabled bool `json:"isTlsEnabled"`
//Data structure configuration of the cluster.
DataStructure DataStructureInput `json:"dataStructures"`
}
//The input for Get Enterprise Cluster Input.
type GetEnterpriseClusterInput struct {
ClusterId string `json:"clusterId"`
}
//This response id of the Cluster Response
type ClusterId struct {
ClusterId int `json:"clusterId"`
}
//This response for Cluster
type Cluster struct {
//Unique identifier of cluster.
Id string `json:"id"`
//Unique identifier of the cluster owner.
CustomerId int `json:"customerId"`
//Name of the cluster.
Name string `json:"name"`
//ReleaseName of the cluster than you can use for group name.
ReleaseName string `json:"releaseName"`
//Password of the cluster.
Password string `json:"password"`
//Port of the Hazelcast IMDG on the cluster.
Port int `json:"port"`
//Hazelcast IMDG version of the cluster.
HazelcastVersion string `json:"hazelcastVersion"`
//Shows if auto scaling feature enabled or not.
IsAutoScalingEnabled bool `json:"isAutoScalingEnabled"`
//Shows if hot backup feature is enabled or not.
IsHotBackupEnabled bool `json:"isHotBackupEnabled"`
//Shows if hot restart feature is enabled or not.
IsHotRestartEnabled bool `json:"isHotRestartEnabled"`
//Shows if Ip whitelisting is enabled to restrict connection to the cluster or not.
IsIpWhitelistEnabled bool `json:"isIpWhitelistEnabled"`
//Shows if TLS(Transport Layer Security) is enabled while connecting to the cluster or not.
IsTlsEnabled bool `json:"isTlsEnabled"`
//Type of the product for the cluster.
ProductType struct {
//Name of the Product Type.
Name ProductTypeName `json:"name"`
//This field shows that if the product is free to use.
IsFree bool `json:"isFree"`
} `json:"productType"`
// ClusterType represents the type of the cluster.
ClusterType struct {
// Name of the cluster type.
Name ClusterType `json:"name"`
} `json:"clusterType"`
//State of the cluster that show current status.
State State `json:"state"`
//Date that shows when cluster was created.
CreatedAt string `json:"createdAt"`
//Date that shows when cluster was started after the creation.
StartedAt string `json:"startedAt"`
//Date that shows when cluster was stopped.
StoppedAt string `json:"stoppedAt"`
//Progress of the cluster.
Progress struct {
//Status of progress.
Status string `json:"status"`
//Total item count of progress.
TotalItemCount int `json:"totalItemCount"`
//Completed item count of progress.
CompletedItemCount int `json:"completedItemCount"`
}
//Cloud provider of the cluster.
CloudProvider struct {
//Name of the cloud provider.
Name string `json:"name"`
//Name of the region.
Region string `json:"region"`
//Availability zones of the region.
AvailabilityZones []string `json:"availabilityZones"`
} `json:"cloudProvider"`
//Discovery tokens of the cluster to connect Hazelcast.
DiscoveryTokens []DiscoveryToken `json:"discoveryTokens"`
//Specs of the cluster.
Specs struct {
//Total memory of the cluster.
TotalMemory float64 `json:"totalMemory"`
//Heap memory of the cluster.
HeapMemory int `json:"heapMemory"`
//Native memory of the cluster.
NativeMemory int `json:"nativeMemory"`
//Number of cpu of the cluster.
Cpu int `json:"cpu"`
//Instance type of the cluster.
InstanceType string `json:"instanceType"`
//Number of Hazelcast cluster members per zone.
InstancePerZone int `json:"instancePerZone"`
} `json:"specs"`
//Networking configuration of the cluster.
Networking struct {
//Type of the network. It determines that cluster is publicly accessible or not.
Type string `json:"type"`
//CIDR Range of the cluster network.
CidrBlock string `json:"cidrBlock"`
//Peering information of the cluster networking.
Peering struct {
//This field is true if at least one peering connection established, false otherwise.
IsEnabled bool `json:"is_enabled"`
} `json:"peering"`
//Peering information of the cluster networking.
PrivateLink struct {
//State of the private link connection.
Url string `json:"url"`
//Url to cloud formation template that you can use for Private Link. For more information, see [AWS Private Link](https
State string `json:"state"`
} `json:"privateLink"`
} `json:"networking"`
//Data structure configuration of the cluster.
DataStructures DataStructureResponse `json:"dataStructures"`
}
//Discovery token of the cluster to connect Hazelcast.
type DiscoveryToken struct {
Source string `json:"source"`
Token string `json:"token"`
}
//Type of all data structure input
type DataStructureInput struct {
//List of map config for the cluster. For more information, see [Map Configuration](https://docs.cloud.hazelcast.com/docs/map-configurations)
MapConfigs []MapConfigInput `json:"mapConfigs,omitempty"`
//List of JCache config for the cluster. For more information, see [JCache](https://docs.cloud.hazelcast.com/docs/jcache)
JcacheConfigs []JCacheConfigInput `json:"jcacheConfigs,omitempty"`
//List of Replicated Map config for the cluster. For more information, see [Replicated Map](https://docs.cloud.hazelcast.com/docs/replicated-map)
ReplicatedMapConfigs []ReplicatedMapConfigInput `json:"replicatedMapConfigs,omitempty"`
//List of Queue config for the cluster. For more information, see [Queue](https://docs.cloud.hazelcast.com/docs/queue)
QueueConfigs []QueueConfigInput `json:"queueConfigs,omitempty"`
//List of Set config for the cluster. For more information, see [Set](https://docs.cloud.hazelcast.com/docs/set)
SetConfigs []SetConfigInput `json:"setConfigs,omitempty"`
//List of List config for the cluster. For more information, see [List Configuration](https://docs.cloud.hazelcast.com/docs/list)
ListConfigs []ListConfigInput `json:"listConfigs,omitempty"`
//List of Topic config for the cluster. For more information, see [Topic](https://docs.cloud.hazelcast.com/docs/topic)
TopicConfigs []TopicConfigInput `json:"topicConfigs,omitempty"`
//List of Multi Map config for the cluster. For more information, see [MultiMap](https://docs.cloud.hazelcast.com/docs/multimap)
MultiMapConfigs []MultiMapConfigInput `json:"multiMapConfigs,omitempty"`
//List of Ring Buffer config for the cluster. For more information, see [RingBuffer](https://docs.cloud.hazelcast.com/docs/ringbuffer)
RingBufferConfigs []RingBufferConfigInput `json:"ringBufferConfigs,omitempty"`
//List of Reliable Topic config for the cluster. For more information, see [ReliableTopic](https://docs.cloud.hazelcast.com/docs/reliable-topic)
ReliableTopicConfigs []ReliableTopicConfigInput `json:"reliableTopicConfigs,omitempty"`
}
//Type of all data structure response
type DataStructureResponse struct {
//List of map config for the cluster. For more information, see [Map Configuration](https://docs.cloud.hazelcast.com/docs/map-configurations)
MapConfigs []MapConfigResponse `json:"mapConfigs"`
//List of JCache config for the cluster. For more information, see [JCache](https://docs.cloud.hazelcast.com/docs/jcache)
JCacheConfigs []JCacheConfigResponse `json:"jCacheConfigs"`
//List of Replicated Map config for the cluster. For more information, see [Replicated Map](https://docs.cloud.hazelcast.com/docs/replicated-map)
ReplicatedMapConfigs []ReplicatedMapConfigResponse `json:"replicatedMapConfigs"`
//List of Queue config for the cluster. For more information, see [Queue](https://docs.cloud.hazelcast.com/docs/queue)
QueueConfigs []QueueConfigResponse `json:"queueConfigs"`
//List of Set config for the cluster. For more information, see [Set](https://docs.cloud.hazelcast.com/docs/set)
SetConfigs []SetConfigResponse `json:"setConfigs"`
//List of List config for the cluster. For more information, see [List Configuration](https://docs.cloud.hazelcast.com/docs/list)
ListConfigs []ListConfigResponse `json:"listConfigs"`
//List of Topic config for the cluster. For more information, see [Topic](https://docs.cloud.hazelcast.com/docs/topic)
TopicConfigs []TopicConfigResponse `json:"topicConfigs"`
//List of Multi Map config for the cluster. For more information, see [MultiMap](https://docs.cloud.hazelcast.com/docs/multimap)
MultiMapConfigs []MultiMapConfigResponse `json:"multiMapConfigs"`
//List of Ring Buffer config for the cluster. For more information, see [RingBuffer](https://docs.cloud.hazelcast.com/docs/ringbuffer)
RingBufferConfigs []RingBufferConfigResponse `json:"ringBufferConfigs"`
//List of Reliable Topic config for the cluster. For more information, see [ReliableTopic](https://docs.cloud.hazelcast.com/docs/reliable-topic)
ReliableTopicConfigs []ReliableTopicConfigResponse `json:"reliableTopicConfigs"`
}
//Type of Map Data Structures Input
type MapConfigInput struct {
//Name of the map config. For more information, see [Map Name](https://docs.cloud.hazelcast.com/docs/map-configurations#map-name)
Name string `json:"name"`
//Number of asynchronous backups/replications. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/map-configurations#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//Number of backups/replications. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/map-configurations#backup-count)
BackupCount int `json:"backupCount"`
//Eviction policy to be applied when the size of map grows larger than the value specified by the Max Size element described below. For more information, see [Eviction Policy](https://docs.cloud.hazelcast.com/docs/map-configurations#eviction-policy)
EvictionPolicy EvictionPolicy `json:"evictionPolicy"`
//Hazelcast iterates through all the owned entries and finds the matching ones. This can be made faster by indexing the most frequently queried fields.
MapIndices *[]string `json:"indexes,omitempty"`
//Unique Identifier of the map store.
MapStore *MapStoreInput `json:"mapStore,omitempty"`
//Maximum time in seconds for each entry to stay idle in the map. For more information, see [Title](https://docs.cloud.hazelcast.com/docs/map-configurations#max-idle-seconds)
MaxIdleSeconds int `json:"maxIdleSeconds"`
//The percentage value when the eviction will start depending on the selected Max Size Policy. For more information, see [Max Size](https://docs.cloud.hazelcast.com/docs/map-configurations#max-size)
MaxSize int `json:"maxSize"`
//Policy on how to define the map's maximum size. For more information, see [Maz Size Policy](https://docs.cloud.hazelcast.com/docs/map-configurations#max-size-policy)
MaxSizePolicy MaxSizePolicy `json:"maxSizePolicy"`
//It is the maximum time in seconds for each entry to stay in the map. For more information, see [TTL](https://docs.cloud.hazelcast.com/docs/map-configurations#time-to-live)
TtlSeconds int `json:"ttlSeconds"`
}
//Type of Map Store Data Structures Input
type MapStoreInput struct {
//Name of the class implementing MapLoader and/or MapStore. For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
ClassName string `json:"className"`
//Used to create batch chunks when writing map store. For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
WriteBatchSize int `json:"writeBatchSize"`
//In write-behind mode, Hazelcast coalesces updates on a specific key by default; it applies only the last update on it. For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
WriteCoalescing bool `json:"writeCoalescing"`
//Sets the initial load mode. For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
InitialLoadMode InitialLoadMode `json:"initialLoadMode"`
//Number of seconds to delay to call the MapStore.store(key, value). For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
WriteDelaySeconds int `json:"writeDelaySeconds"`
Properties []MapStoreProperty `json:"properties"`
}
//Type of Map Store Property Data Structures Input
type MapStoreProperty struct {
Key string `json:"key"`
Value string `json:"value"`
}
//Type of Map Config Response
type MapConfigResponse struct {
//Unique Identifier of the map config.
Id string `json:"id"`
//Name of the map config. For more information, see [Map Name](https://docs.cloud.hazelcast.com/docs/map-configurations#map-name)
Name string `json:"name"`
//Number of asynchronous backups/replications. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/map-configurations#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//Number of backups/replications. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/map-configurations#backup-count)
BackupCount int `json:"backupCount"`
//Eviction policy to be applied when the size of map grows larger than the value specified by the Max Size element described below. For more information, see [Eviction Policy](https://docs.cloud.hazelcast.com/docs/map-configurations#eviction-policy)
EvictionPolicy string `json:"evictionPolicy"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
//Hazelcast iterates through all the owned entries and finds the matching ones. This can be made faster by indexing the most frequently queried fields.
MapIndices []struct {
//Unique Identifier of the map index.
Id string `json:"id"`
//Name of the map index.
Name string `json:"name"`
} `json:"mapIndices"`
//Unique Identifier of the map store.
MapStore struct {
//Name of the class implementing MapLoader and/or MapStore. For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
ClassName string `json:"class_name"`
//Used to create batch chunks when writing map store. For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
WriteBatchSize int `json:"write_batch_size"`
//In write-behind mode, Hazelcast coalesces updates on a specific key by default; it applies only the last update on it. For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
WriteCoalescing bool `json:"write_coalescing"`
//Sets the initial load mode. For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
InitialLoadMode string `json:"initial_load_mode"`
//Number of seconds to delay to call the MapStore.store(key, value). For more information, see [MapLoader and MapStore](https://docs.cloud.hazelcast.com/docs/maploader-and-mapstore)
WriteDelaySeconds int `json:"write_delay_seconds"`
} `json:"mapStore"`
//Maximum time in seconds for each entry to stay idle in the map. For more information, see [Title](https://docs.cloud.hazelcast.com/docs/map-configurations#max-idle-seconds)
MaxIdleSeconds int `json:"maxIdleSeconds"`
//The percentage value when the eviction will start depending on the selected Max Size Policy. For more information, see [Max Size](https://docs.cloud.hazelcast.com/docs/map-configurations#max-size)
MaxSize int `json:"maxSize"`
//Policy on how to define the map's maximum size. For more information, see [Maz Size Policy](https://docs.cloud.hazelcast.com/docs/map-configurations#max-size-policy)
MaxSizePolicy string `json:"maxSizePolicy"`
//It is the maximum time in seconds for each entry to stay in the map. For more information, see [TTL](https://docs.cloud.hazelcast.com/docs/map-configurations#time-to-live)
TtlSeconds int `json:"ttlSeconds"`
}
//Type of List Data Structure Input
type ListConfigInput struct {
//Name of the list config.
Name string `json:"name"`
//This value sets how many asynchronous backup will be. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/list#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//This value sets that how many synchronous backup will be. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/list#backup-count)
BackupCount int `json:"backupCount"`
//You can set maximum number of entries for the List you are creating with setting this value. For more information, see [Maximum Size](https://docs.cloud.hazelcast.com/docs/list#maximum-size)
MaxSize int `json:"maxSize"`
}
//Type of List Data Structure Response
type ListConfigResponse struct {
//Unique Identifier of the list config.
Id string `json:"id"`
//Name of the list config.
Name string `json:"name"`
//This value sets how many asynchronous backup will be. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/list#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//This value sets that how many synchronous backup will be. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/list#backup-count)
BackupCount int `json:"backupCount"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
//You can set maximum number of entries for the List you are creating with setting this value. For more information, see [Maximum Size](https://docs.cloud.hazelcast.com/docs/list#maximum-size)
MaxSize int `json:"maxSize"`
}
//Type of Set Data Structure Input
type SetConfigInput struct {
//Name of the Set config.
Name string `json:"name"`
//This value sets how many asynchronous backup will be. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/set#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//This value sets that how many synchronous backup will be. For more information, see [Backup Count]( https
BackupCount int `json:"backupCount"`
//You can set maximum number of entries for the set you are creating with setting this value. For more information, see [Maximum Size](https://docs.cloud.hazelcast.com/docs/set#maximum-size)
MaxSize int `json:"maxSize"`
}
//Type of Set Data Structure Response
type SetConfigResponse struct {
//Unique Identifier of the Set config.
Id string `json:"id"`
//Name of the Set config.
Name string `json:"name"`
//This value sets how many asynchronous backup will be. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/set#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//This value sets that how many synchronous backup will be. For more information, see [Backup Count]( https
BackupCount int `json:"backupCount"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
//You can set maximum number of entries for the set you are creating with setting this value. For more information, see [Maximum Size](https://docs.cloud.hazelcast.com/docs/set#maximum-size)
MaxSize int `json:"maxSize"`
}
//Type of Queue Data Structure Input
type QueueConfigInput struct {
//Name of the Queue config.
Name string `json:"name"`
//Number of asynchronous backups. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/queue#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//Number of synchronous backups. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/queue#backup-count)
BackupCount int `json:"backupCount"`
//Used to purge unused or empty queues. For more information, see [TTL](https://docs.cloud.hazelcast.com/docs/queue#time-to-live)
EmptyQueueTtl int `json:"emptyQueueTtl"`
//Maximum number of items in the queue. For more information, see [Maximum Size](https://docs.cloud.hazelcast.com/docs/queue#maximum-size)
MaxSize int `json:"maxSize"`
}
//Type of Queue Data Structure Response
type QueueConfigResponse struct {
//Unique Identifier of the Queue config.
Id string `json:"id"`
//Name of the Queue config.
Name string `json:"name"`
//Number of asynchronous backups. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/queue#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//Number of synchronous backups. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/queue#backup-count)
BackupCount int `json:"backupCount"`
//Used to purge unused or empty queues. For more information, see [TTL](https://docs.cloud.hazelcast.com/docs/queue#time-to-live)
EmptyQueueTtl int `json:"emptyQueueTtl"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
//Maximum number of items in the queue. For more information, see [Maximum Size](https://docs.cloud.hazelcast.com/docs/queue#maximum-size)
MaxSize int `json:"maxSize"`
}
//Type of Replicated Map Data Structure Input
type ReplicatedMapConfigInput struct {
//Name of the Replicated Map config.
Name string `json:"name"`
//Specifies whether the Replicated Map is available for reads before the initial replication is completed. For more information, see [Asynchronous Fillup](https://docs.cloud.hazelcast.com/docs/replicated-map#asynchronous-fillup)
AsyncFillUp bool `json:"asyncFillUp"`
//Internal storage format. For more information, see [In Memory Format](https://docs.cloud.hazelcast.com/docs/replicated-map#in-memory-format)
InMemoryFormat InMemoryFormat `json:"inMemoryFormat"`
}
//Type of Replicated Map Data Structure Response
type ReplicatedMapConfigResponse struct {
//Unique Identifier of the Replicated Map config.
Id string `json:"id"`
//Name of the Replicated Map config.
Name string `json:"name"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
//Specifies whether the Replicated Map is available for reads before the initial replication is completed. For more information, see [Asynchronous Fillup](https://docs.cloud.hazelcast.com/docs/replicated-map#asynchronous-fillup)
AsyncFillUp bool `json:"asyncFillUp"`
//Internal storage format. For more information, see [In Memory Format](https://docs.cloud.hazelcast.com/docs/replicated-map#in-memory-format)
InMemoryFormat string `json:"inMemoryFormat"`
}
//Type of JCache Data Structure Input
type JCacheConfigInput struct {
//Name of the JCache config.
Name string `json:"name"`
//Number of asynchronous backups/replications. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/jcache#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//Number of synchronous backups/replications. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/jcache#backup-count)
BackupCount int `json:"backupCount"`
//Eviction policy that compares values to find the best matching eviction candidate. For more information, see [Eviction Policy](https://docs.cloud.hazelcast.com/docs/jcache#eviction-policy)
EvictionPolicy EvictionPolicy `json:"evictionPolicy"`
//Fully qualified class name of the cache key type. For more information, see [Key Type](https://docs.cloud.hazelcast.com/docs/jcache#key-type)
KeyType string `json:"keyType"`
//Maximum free/used percentage or maximum size in bytes depending on the selected maxSizePolicy. For more information, see [Maximum Size](https://docs.cloud.hazelcast.com/docs/jcache#maximum-size)
MaxSize int `json:"maxSize"`
//Maximum size policy. If maximum size is reached, the cache is evicted based on the eviction policy. For more information, see [Max Size Policy](https://docs.cloud.hazelcast.com/docs/jcache#max-size-policy)
MaxSizePolicy MaxSizePolicy `json:"maxSizePolicy"`
//Time-to-live for cache entries, in seconds. For more information, see [TTL](https://docs.cloud.hazelcast.com/docs/jcache#time-to-live)
TtlSeconds int `json:"ttlSeconds"`
//Fully qualified class name of the cache value type. For more information, see [Value Type](https://docs.cloud.hazelcast.com/docs/jcache#value-type)
ValueType string `json:"valueType"`
}
//Type of JCache Data Structure Response
type JCacheConfigResponse struct {
//Unique Identifier of the JCache config.
Id string `json:"id"`
//Name of the JCache config.
Name string `json:"name"`
//Number of asynchronous backups/replications. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/jcache#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//Number of synchronous backups/replications. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/jcache#backup-count)
BackupCount int `json:"backupCount"`
//Eviction policy that compares values to find the best matching eviction candidate. For more information, see [Eviction Policy](https://docs.cloud.hazelcast.com/docs/jcache#eviction-policy)
EvictionPolicy string `json:"evictionPolicy"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
//Fully qualified class name of the cache key type. For more information, see [Key Type](https://docs.cloud.hazelcast.com/docs/jcache#key-type)
KeyType string `json:"keyType"`
//Maximum free/used percentage or maximum size in bytes depending on the selected maxSizePolicy. For more information, see [Maximum Size](https://docs.cloud.hazelcast.com/docs/jcache#maximum-size)
MaxSize int `json:"maxSize"`
//Maximum size policy. If maximum size is reached, the cache is evicted based on the eviction policy. For more information, see [Max Size Policy](https://docs.cloud.hazelcast.com/docs/jcache#max-size-policy)
MaxSizePolicy string `json:"maxSizePolicy"`
//Time-to-live for cache entries, in seconds. For more information, see [TTL](https://docs.cloud.hazelcast.com/docs/jcache#time-to-live)
TtlSeconds int `json:"ttlSeconds"`
//Fully qualified class name of the cache value type. For more information, see [Value Type](https://docs.cloud.hazelcast.com/docs/jcache#value-type)
ValueType string `json:"valueType"`
}
//Type of Topic Data Structure Input
type TopicConfigInput struct {
//Name of the Topic config.
Name string `json:"name"`
//Global ordering enables, all receivers will receive all messages from all sources with the same order. For more information, see [Global Ordering](https://docs.cloud.hazelcast.com/docs/topic#global-ordering)
GlobalOrdering bool `json:"globalOrdering"`
}
//Type of Topic Data Structure Response
type TopicConfigResponse struct {
//Unique Identifier of the Topic config.
Id string `json:"id"`
//Name of the Topic config.
Name string `json:"name"`
//Global ordering enables, all receivers will receive all messages from all sources with the same order. For more information, see [Global Ordering](https://docs.cloud.hazelcast.com/docs/topic#global-ordering)
GlobalOrdering bool `json:"globalOrdering"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
}
//Type of MultiMap Data Structure Input
type MultiMapConfigInput struct {
//Name of the MultiMap config.
Name string `json:"name"`
//The number of asynchronous backups. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/multimap#asynchronous-backups-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//The number of synchronous backups. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/multimap#backup-count)
BackupCount int `json:"backupCount"`
//Type of the value collection. For more information, see [Value Collection Type](https://docs.cloud.hazelcast.com/docs/multimap#value-collection-type)
ValueCollectionType ValueCollectionType `json:"valueCollectionType"`
}
//Type of MultiMap Data Structure Response
type MultiMapConfigResponse struct {
//Unique Identifier of the MultiMap config.
Id string `json:"id"`
//Name of the MultiMap config.
Name string `json:"name"`
//The number of asynchronous backups. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/multimap#asynchronous-backups-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//The number of synchronous backups. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/multimap#backup-count)
BackupCount int `json:"backupCount"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
//Type of the value collection. For more information, see [Value Collection Type](https://docs.cloud.hazelcast.com/docs/multimap#value-collection-type)
ValueCollectionType string `json:"valueCollectionType"`
}
//Type of Ring Buffer Data Structure Input
type RingBufferConfigInput struct {
//Name of the RingBuffer config.
Name string `json:"name"`
//The number of asynchronous backups. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/ringbuffer#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//The number of synchronous backups. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/ringbuffer#backup-count)
BackupCount int `json:"backupCount"`
//Capacity of the RingBuffer. For more information, see [Capacity](https://docs.cloud.hazelcast.com/docs/ringbuffer#capacity)
Capacity int `json:"capacity"`
//In-memory format that controls the format of the RingBuffer’s stored items. For more information, see [In Memory Format](https://docs.cloud.hazelcast.com/docs/ringbuffer#in-memory-format)
InMemoryFormat InMemoryFormat `json:"inMemoryFormat"`
//The value that controls how long the items remain in the RingBuffer before they are expired. For more information, see [TTL](https://docs.cloud.hazelcast.com/docs/ringbuffer#time-to-live)
TtlSeconds int `json:"ttlSeconds"`
}
//Type of Ring Buffer Data Structure Response
type RingBufferConfigResponse struct {
//Unique Identifier of the RingBuffer config.
Id string `json:"id"`
//Name of the RingBuffer config.
Name string `json:"name"`
//The number of asynchronous backups. For more information, see [Asynchronous Backup Count](https://docs.cloud.hazelcast.com/docs/ringbuffer#asynchronous-backup-count)
AsyncBackupCount int `json:"asyncBackupCount"`
//The number of synchronous backups. For more information, see [Backup Count](https://docs.cloud.hazelcast.com/docs/ringbuffer#backup-count)
BackupCount int `json:"backupCount"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
//Capacity of the RingBuffer. For more information, see [Capacity](https://docs.cloud.hazelcast.com/docs/ringbuffer#capacity)
Capacity int `json:"capacity"`
//In-memory format that controls the format of the RingBuffer’s stored items. For more information, see [In Memory Format](https://docs.cloud.hazelcast.com/docs/ringbuffer#in-memory-format)
InMemoryFormat string `json:"inMemoryFormat"`
//The value that controls how long the items remain in the RingBuffer before they are expired. For more information, see [TTL](https://docs.cloud.hazelcast.com/docs/ringbuffer#time-to-live)
TtlSeconds int `json:"ttlSeconds"`
}
//Type of Reliable Topic Data Structure Input
type ReliableTopicConfigInput struct {
//Name of the ReliableTopic config.
Name string `json:"name"`
//The minimum number of messages that Reliable Topic tries to read in batches. For more information, see [Batch Size](https://docs.cloud.hazelcast.com/docs/reliable-topic#reliable-topic-batch-size)
ReadBatchSize int `json:"readBatchSize"`
//A policy to deal with an overloaded topic; so topic where there is no place to store new messages. For more information, see [Overload Policy](https://docs.cloud.hazelcast.com/docs/reliable-topic#reliable-topic-overload-policy )
TopicOverloadPolicy TopicOverloadPolicy `json:"topicOverloadPolicy"`
}
//Type of Reliable Topic Data Structure Response
type ReliableTopicConfigResponse struct {
//Unique Identifier of the ReliableTopic config.
Id string `json:"id"`
//Name of the ReliableTopic config.
Name string `json:"name"`
//Shows that if this config is ready to use.
IsReady bool `json:"isReady"`
//The minimum number of messages that Reliable Topic tries to read in batches. For more information, see [Batch Size](https://docs.cloud.hazelcast.com/docs/reliable-topic#reliable-topic-batch-size)
ReadBatchSize int `json:"readBatchSize"`
//A policy to deal with an overloaded topic; so topic where there is no place to store new messages. For more information, see [Overload Policy](https://docs.cloud.hazelcast.com/docs/reliable-topic#reliable-topic-overload-policy )
TopicOverloadPolicy string `json:"topicOverloadPolicy"`
}
//Type of Cluster Resume Input
type ClusterResumeInput struct {
ClusterId string `json:"ClusterId"`
}
//Type of Cluster Delete Input
type ClusterDeleteInput struct {
ClusterId string `json:"ClusterId"`
}
//Type of Cluster Stop Input
type ClusterStopInput struct {
ClusterId string `json:"ClusterId"`
}
//Type of Cluster List Input
type ClusterListInput struct {
ProductType ProductTypeName `json:"productType"`
}