java/gust/backend/driver/spanner/SpannerAdapter.java
Method acquire
has 11 arguments (exceeds 10 allowed). Consider refactoring. Open
Open
@Nonnull SpannerOptions.Builder baseOptions,
@Nonnull DatabaseId defaultDatabase,
@Nonnull @GoogleAPIChannel(service = GoogleService.SPANNER) TransportChannelProvider spannerChannel,
@Nonnull Optional<CredentialsProvider> credentialsProvider,
@Nonnull Optional<SpannerOptions.CallCredentialsProvider> callCredentialProvider,
- Create a ticketCreate a ticket
Method has 11 parameters, which is greater than 7 authorized. Open
Open
public static @Nonnull <K extends Message, M extends Message> SpannerAdapter<K, M> acquire(
- Read upRead up
- Create a ticketCreate a ticket
- Exclude checks
A long parameter list can indicate that a new structure should be created to wrap the numerous parameters or that the function is doing too many things.
Noncompliant Code Example
With a maximum number of 4 parameters:
public void doSomething(int param1, int param2, int param3, String param4, long param5) { ... }
Compliant Solution
public void doSomething(int param1, int param2, int param3, String param4) { ... }
Exceptions
Methods annotated with :
- Spring's
@RequestMapping
(and related shortcut annotations, like@GetRequest
) - JAX-RS API annotations (like
@javax.ws.rs.GET
) - Bean constructor injection with
@org.springframework.beans.factory.annotation.Autowired
- CDI constructor injection with
@javax.inject.Inject
-
@com.fasterxml.jackson.annotation.JsonCreator
may have a lot of parameters, encapsulation being possible. Such methods are therefore ignored.