cloudfoundry-community/uaa-credentials-broker

View on GitHub
broker.go

Summary

Maintainability
B
5 hrs
Test Coverage

Method DeployerAccountBroker.Bind has 65 lines of code (exceeds 50 allowed). Consider refactoring.
Open

func (b *DeployerAccountBroker) Bind(
    context context.Context,
    instanceID, bindingID string,
    details brokerapi.BindDetails,
) (brokerapi.Binding, error) {
Severity: Minor
Found in broker.go - About 1 hr to fix

    Method DeployerAccountBroker.Bind has a Cognitive Complexity of 27 (exceeds 20 allowed). Consider refactoring.
    Open

    func (b *DeployerAccountBroker) Bind(
        context context.Context,
        instanceID, bindingID string,
        details brokerapi.BindDetails,
    ) (brokerapi.Binding, error) {
    Severity: Minor
    Found in broker.go - About 1 hr to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Method DeployerAccountBroker.Bind has 14 return statements (exceeds 4 allowed).
    Open

    func (b *DeployerAccountBroker) Bind(
        context context.Context,
        instanceID, bindingID string,
        details brokerapi.BindDetails,
    ) (brokerapi.Binding, error) {
    Severity: Major
    Found in broker.go - About 1 hr to fix

      Method DeployerAccountBroker.Deprovision has 6 return statements (exceeds 4 allowed).
      Open

      func (b *DeployerAccountBroker) Deprovision(
          context context.Context,
          instanceID string,
          details brokerapi.DeprovisionDetails,
          asyncAllowed bool,
      Severity: Major
      Found in broker.go - About 40 mins to fix

        Method DeployerAccountBroker.Unbind has 5 return statements (exceeds 4 allowed).
        Open

        func (b *DeployerAccountBroker) Unbind(
            context context.Context,
            instanceID, bindingID string,
            details brokerapi.UnbindDetails,
        ) error {
        Severity: Major
        Found in broker.go - About 35 mins to fix

          2: cannot find package "code.cloudfoundry.org/lager" in any of:
          Open

              "code.cloudfoundry.org/lager"
          Severity: Minor
          Found in broker.go by govet

          exported type BindOptions should have comment or be unexported
          Open

          type BindOptions struct {
          Severity: Minor
          Found in broker.go by golint

          exported method DeployerAccountBroker.Unbind should have comment or be unexported
          Open

          func (b *DeployerAccountBroker) Unbind(
          Severity: Minor
          Found in broker.go by golint

          exported method DeployerAccountBroker.Deprovision should have comment or be unexported
          Open

          func (b *DeployerAccountBroker) Deprovision(
          Severity: Minor
          Found in broker.go by golint

          exported method DeployerAccountBroker.LastOperation should have comment or be unexported
          Open

          func (b *DeployerAccountBroker) LastOperation(context context.Context, instanceID, operationData string) (brokerapi.LastOperation, error) {
          Severity: Minor
          Found in broker.go by golint

          exported method DeployerAccountBroker.Provision should have comment or be unexported
          Open

          func (b *DeployerAccountBroker) Provision(
          Severity: Minor
          Found in broker.go by golint

          exported method DeployerAccountBroker.Bind should have comment or be unexported
          Open

          func (b *DeployerAccountBroker) Bind(
          Severity: Minor
          Found in broker.go by golint

          exported method DeployerAccountBroker.Update should have comment or be unexported
          Open

          func (b *DeployerAccountBroker) Update(context context.Context, instanceID string, details brokerapi.UpdateDetails, asyncAllowed bool) (brokerapi.UpdateServiceSpec, error) {
          Severity: Minor
          Found in broker.go by golint

          exported method DeployerAccountBroker.Services should have comment or be unexported
          Open

          func (b *DeployerAccountBroker) Services(context context.Context) []brokerapi.Service {
          Severity: Minor
          Found in broker.go by golint

          exported type DeployerAccountBroker should have comment or be unexported
          Open

          type DeployerAccountBroker struct {
          Severity: Minor
          Found in broker.go by golint

          There are no issues that match your filters.

          Category
          Status