Skip to content

Commit 1054d0d

Browse files
authored
Merge pull request #200 from joaoluizjoaquim/mapTagOverrideConfig
Change bool properties for bool pointer. Create IsEmpty some struct to validate if object is empty
2 parents 8cc1c69 + c90b54e commit 1054d0d

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

model/Table.go

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -305,28 +305,44 @@ type InstanceAssignmentConfigMap struct {
305305
Offline *InstanceAssignment `json:"OFFLINE,omitempty"`
306306
}
307307

308+
func (instance *InstanceAssignmentConfigMap) IsEmpty() bool {
309+
return instance.Consuming == nil && instance.Completed == nil && instance.Offline == nil
310+
}
311+
308312
type InstanceAssignment struct {
309313
TagPoolConfig *TagPoolConfigInstanceAssignment `json:"tagPoolConfig,omitempty"`
310314
ReplicaGroupPartitionConfig *ReplicaGroupPartitionInstanceAssignment `json:"replicaGroupPartitionConfig,omitempty"`
311315
PartitionSelector string `json:"partitionSelector,omitempty"`
312-
MinimizeDataMovement bool `json:"minimizeDataMovement,omitempty"`
316+
MinimizeDataMovement *bool `json:"minimizeDataMovement,omitempty"`
317+
}
318+
319+
func (instance *InstanceAssignment) IsEmpty() bool {
320+
return instance.TagPoolConfig == nil && instance.ReplicaGroupPartitionConfig == nil && instance.PartitionSelector == "" && instance.MinimizeDataMovement == nil
313321
}
314322

315323
type TagPoolConfigInstanceAssignment struct {
316324
Tag string `json:"tag,omitempty"`
317-
PoolBased bool `json:"poolBased,omitempty"`
325+
PoolBased *bool `json:"poolBased,omitempty"`
318326
NumPools int64 `json:"numPools,omitempty"`
319327
}
320328

329+
func (tagPool *TagPoolConfigInstanceAssignment) IsEmpty() bool {
330+
return tagPool.Tag == "" && tagPool.PoolBased == nil
331+
}
332+
321333
type ReplicaGroupPartitionInstanceAssignment struct {
322-
ReplicaGroupBased bool `json:"replicaGroupBased,omitempty"`
334+
ReplicaGroupBased *bool `json:"replicaGroupBased,omitempty"`
323335
NumInstances int64 `json:"numInstances,omitempty"`
324336
NumReplicaGroups int64 `json:"numReplicaGroups,omitempty"`
325337
NumInstancesPerReplicaGroup int64 `json:"numInstancesPerReplicaGroup,omitempty"`
326338
NumPartitions int64 `json:"numPartitions,omitempty"`
327339
NumInstancesPerPartitions int64 `json:"numInstancesPerPartition,omitempty"`
328340
PartitionColumn string `json:"partitionColumn,omitempty"`
329-
MinimizeDataMovement bool `json:"minimizeDataMovement,omitempty"`
341+
MinimizeDataMovement *bool `json:"minimizeDataMovement,omitempty"`
342+
}
343+
344+
func (replicaGroup *ReplicaGroupPartitionInstanceAssignment) IsEmpty() bool {
345+
return replicaGroup.ReplicaGroupBased == nil && replicaGroup.MinimizeDataMovement == nil && replicaGroup.PartitionColumn == ""
330346
}
331347

332348
type Table struct {

0 commit comments

Comments
 (0)