Browse Source

Mark fetch requests fields as final and @NonNull when possible

Mark reference fields as final, annotate constructor parameters and
getters as @NonNull when appropiate and assert the incoming references
are non-null.

Change-Id: I0ef9a513a99313bf461fe9629ce6cc8b409bdedb
Signed-off-by: Ivan Frade <ifrade@google.com>
stable-5.2
Ivan Frade 6 years ago
parent
commit
ec838fee0c
  1. 19
      org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchRequest.java
  2. 13
      org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchV0Request.java
  3. 32
      org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchV2Request.java

19
org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchRequest.java

@ -42,6 +42,8 @@
*/
package org.eclipse.jgit.transport;
import static java.util.Objects.requireNonNull;
import java.util.Set;
import org.eclipse.jgit.annotations.NonNull;
@ -76,19 +78,14 @@ abstract class FetchRequest {
* @param clientCapabilities
* capabilities sent in the request
*/
FetchRequest(Set<ObjectId> wantIds, int depth,
Set<ObjectId> clientShallowCommits, long filterBlobLimit,
Set<String> clientCapabilities) {
if (wantIds == null || clientShallowCommits == null
|| clientCapabilities == null) {
throw new NullPointerException();
}
this.wantIds = wantIds;
FetchRequest(@NonNull Set<ObjectId> wantIds, int depth,
@NonNull Set<ObjectId> clientShallowCommits, long filterBlobLimit,
@NonNull Set<String> clientCapabilities) {
this.wantIds = requireNonNull(wantIds);
this.depth = depth;
this.clientShallowCommits = clientShallowCommits;
this.clientShallowCommits = requireNonNull(clientShallowCommits);
this.filterBlobLimit = filterBlobLimit;
this.clientCapabilities = clientCapabilities;
this.clientCapabilities = requireNonNull(clientCapabilities);
}
/**

13
org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchV0Request.java

@ -46,6 +46,7 @@ import java.util.Collection;
import java.util.HashSet;
import java.util.Set;
import org.eclipse.jgit.annotations.NonNull;
import org.eclipse.jgit.lib.ObjectId;
/**
@ -53,9 +54,9 @@ import org.eclipse.jgit.lib.ObjectId;
*/
final class FetchV0Request extends FetchRequest {
FetchV0Request(Set<ObjectId> wantIds, int depth,
Set<ObjectId> clientShallowCommits, long filterBlobLimit,
Set<String> clientCapabilities) {
FetchV0Request(@NonNull Set<ObjectId> wantIds, int depth,
@NonNull Set<ObjectId> clientShallowCommits, long filterBlobLimit,
@NonNull Set<String> clientCapabilities) {
super(wantIds, depth, clientShallowCommits, filterBlobLimit,
clientCapabilities);
}
@ -64,13 +65,13 @@ final class FetchV0Request extends FetchRequest {
int depth;
Set<ObjectId> wantIds = new HashSet<>();
final Set<ObjectId> wantIds = new HashSet<>();
Set<ObjectId> clientShallowCommits = new HashSet<>();
final Set<ObjectId> clientShallowCommits = new HashSet<>();
long filterBlobLimit = -1;
Set<String> clientCaps = new HashSet<>();
final Set<String> clientCaps = new HashSet<>();
/**
* @param objectId

32
org.eclipse.jgit/src/org/eclipse/jgit/transport/FetchV2Request.java

@ -42,6 +42,8 @@
*/
package org.eclipse.jgit.transport;
import static java.util.Objects.requireNonNull;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
@ -71,16 +73,18 @@ public final class FetchV2Request extends FetchRequest {
private final boolean doneReceived;
private FetchV2Request(List<ObjectId> peerHas,
TreeMap<String, ObjectId> wantedRefs, Set<ObjectId> wantIds,
Set<ObjectId> clientShallowCommits, int deepenSince,
List<String> deepenNotRefs, int depth, long filterBlobLimit,
boolean doneReceived, Set<String> clientCapabilities) {
FetchV2Request(@NonNull List<ObjectId> peerHas,
@NonNull TreeMap<String, ObjectId> wantedRefs,
@NonNull Set<ObjectId> wantIds,
@NonNull Set<ObjectId> clientShallowCommits, int deepenSince,
@NonNull List<String> deepenNotRefs, int depth,
long filterBlobLimit,
boolean doneReceived, @NonNull Set<String> clientCapabilities) {
super(wantIds, depth, clientShallowCommits, filterBlobLimit, clientCapabilities);
this.peerHas = peerHas;
this.wantedRefs = wantedRefs;
this.peerHas = requireNonNull(peerHas);
this.wantedRefs = requireNonNull(wantedRefs);
this.deepenSince = deepenSince;
this.deepenNotRefs = deepenNotRefs;
this.deepenNotRefs = requireNonNull(deepenNotRefs);
this.doneReceived = doneReceived;
}
@ -134,17 +138,17 @@ public final class FetchV2Request extends FetchRequest {
/** A builder for {@link FetchV2Request}. */
static final class Builder {
List<ObjectId> peerHas = new ArrayList<>();
final List<ObjectId> peerHas = new ArrayList<>();
TreeMap<String, ObjectId> wantedRefs = new TreeMap<>();
final TreeMap<String, ObjectId> wantedRefs = new TreeMap<>();
Set<ObjectId> wantIds = new HashSet<>();
final Set<ObjectId> wantIds = new HashSet<>();
Set<ObjectId> clientShallowCommits = new HashSet<>();
final Set<ObjectId> clientShallowCommits = new HashSet<>();
List<String> deepenNotRefs = new ArrayList<>();
final List<String> deepenNotRefs = new ArrayList<>();
Set<String> clientCapabilities = new HashSet<>();
final Set<String> clientCapabilities = new HashSet<>();
int depth;

Loading…
Cancel
Save