MCPcopy
hub / github.com/IBM/sarama / AlterConfig

Method AlterConfig

admin.go:956–1006  ·  view source on GitHub ↗
(resourceType ConfigResourceType, name string, entries map[string]*string, validateOnly bool)

Source from the content-addressed store, hash-verified

954}
955
956func (ca *clusterAdmin) AlterConfig(resourceType ConfigResourceType, name string, entries map[string]*string, validateOnly bool) error {
957 var resources []*AlterConfigsResource
958 resources = append(resources, &AlterConfigsResource{
959 Type: resourceType,
960 Name: name,
961 ConfigEntries: entries,
962 })
963
964 request := &AlterConfigsRequest{
965 Resources: resources,
966 ValidateOnly: validateOnly,
967 }
968 if ca.conf.Version.IsAtLeast(V2_0_0_0) {
969 request.Version = 1
970 }
971
972 var (
973 b *Broker
974 err error
975 )
976
977 // AlterConfig of broker/broker logger must be sent to the broker in question
978 if dependsOnSpecificNode(&ConfigResource{Name: name, Type: resourceType}) {
979 var id int64
980 id, err = strconv.ParseInt(name, 10, 32)
981 if err != nil {
982 return err
983 }
984 b, err = ca.findBroker(int32(id))
985 } else {
986 b, err = ca.findAnyBroker()
987 }
988 if err != nil {
989 return err
990 }
991
992 _ = b.Open(ca.client.Config())
993 rsp, err := b.AlterConfigs(request)
994 if err != nil {
995 return err
996 }
997
998 for _, rspResource := range rsp.Resources {
999 if rspResource.Name == name {
1000 if rspResource.ErrorCode != 0 {
1001 return &AlterConfigError{Err: KError(rspResource.ErrorCode), ErrMsg: rspResource.ErrorMsg}
1002 }
1003 }
1004 }
1005 return nil
1006}
1007
1008func (ca *clusterAdmin) IncrementalAlterConfig(resourceType ConfigResourceType, name string, entries map[string]IncrementalAlterConfigsEntry, validateOnly bool) error {
1009 var resources []*IncrementalAlterConfigsResource

Callers

nothing calls this directly

Calls 8

findBrokerMethod · 0.95
findAnyBrokerMethod · 0.95
dependsOnSpecificNodeFunction · 0.85
KErrorTypeAlias · 0.85
IsAtLeastMethod · 0.80
OpenMethod · 0.80
AlterConfigsMethod · 0.80
ConfigMethod · 0.65

Tested by

no test coverage detected