Browse Source

Merge changes from topic 'nullable'

* changes:
  Update dependencies to use the JGit-internal @Nullable
  Use the JGit-internal @Nullable annotation
  Add a JGit-internal Nullable type
stable-4.2
Jonathan Nieder 9 years ago committed by Gerrit Code Review @ Eclipse.org
parent
commit
deb853cb69
  1. 6
      org.eclipse.jgit.archive/.settings/org.eclipse.jdt.core.prefs
  2. 1
      org.eclipse.jgit.archive/META-INF/MANIFEST.MF
  3. 6
      org.eclipse.jgit.pgm/.settings/org.eclipse.jdt.core.prefs
  4. 1
      org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
  5. 6
      org.eclipse.jgit/.settings/org.eclipse.jdt.core.prefs
  6. 3
      org.eclipse.jgit/META-INF/MANIFEST.MF
  7. 6
      org.eclipse.jgit/pom.xml
  8. 67
      org.eclipse.jgit/src/org/eclipse/jgit/annotations/Nullable.java
  9. 8
      org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java

6
org.eclipse.jgit.archive/.settings/org.eclipse.jdt.core.prefs

@ -1,9 +1,9 @@
eclipse.preferences.version=1 eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=enabled org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=enabled
org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jgit.annotations.NonNull
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jgit.annotations.NonNullByDefault
org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jgit.annotations.Nullable
org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate

1
org.eclipse.jgit.archive/META-INF/MANIFEST.MF

@ -24,4 +24,3 @@ Export-Package: org.eclipse.jgit.archive;version="4.2.0";
org.eclipse.jgit.api, org.eclipse.jgit.api,
org.apache.commons.compress.archivers, org.apache.commons.compress.archivers,
org.osgi.framework" org.osgi.framework"
Require-Bundle: org.eclipse.jdt.annotation;bundle-version="[1.1.0,2.0.0)";resolution:=optional

6
org.eclipse.jgit.pgm/.settings/org.eclipse.jdt.core.prefs

@ -1,9 +1,9 @@
eclipse.preferences.version=1 eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=enabled org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=enabled
org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jgit.annotations.NonNull
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jgit.annotations.NonNullByDefault
org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jgit.annotations.Nullable
org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate

1
org.eclipse.jgit.pgm/META-INF/MANIFEST.MF

@ -63,4 +63,3 @@ Export-Package: org.eclipse.jgit.console;version="4.2.0";
org.kohsuke.args4j" org.kohsuke.args4j"
Main-Class: org.eclipse.jgit.pgm.Main Main-Class: org.eclipse.jgit.pgm.Main
Implementation-Title: JGit Command Line Interface Implementation-Title: JGit Command Line Interface
Require-Bundle: org.eclipse.jdt.annotation;bundle-version="[1.1.0,2.0.0)";resolution:=optional

6
org.eclipse.jgit/.settings/org.eclipse.jdt.core.prefs

@ -1,9 +1,9 @@
eclipse.preferences.version=1 eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=enabled org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=enabled
org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jgit.annotations.NonNull
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jgit.annotations.NonByDefault
org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jgit.annotations.Nullable
org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate

3
org.eclipse.jgit/META-INF/MANIFEST.MF

@ -154,8 +154,7 @@ Export-Package: org.eclipse.jgit.api;version="4.2.0";
org.ietf.jgss", org.ietf.jgss",
org.eclipse.jgit.util.io;version="4.2.0" org.eclipse.jgit.util.io;version="4.2.0"
Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)", Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
org.eclipse.jdt.annotation;bundle-version="[1.1.0,2.0.0)";resolution:=optional
Import-Package: com.googlecode.javaewah;version="[0.7.9,0.8.0)", Import-Package: com.googlecode.javaewah;version="[0.7.9,0.8.0)",
javax.crypto, javax.crypto,
javax.net.ssl, javax.net.ssl,

6
org.eclipse.jgit/pom.xml

@ -88,12 +88,6 @@
<groupId>org.slf4j</groupId> <groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId> <artifactId>slf4j-api</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.eclipse.jdt</groupId>
<artifactId>org.eclipse.jdt.annotation</artifactId>
<version>1.1.0</version>
</dependency>
</dependencies> </dependencies>
<build> <build>

67
org.eclipse.jgit/src/org/eclipse/jgit/annotations/Nullable.java

@ -0,0 +1,67 @@
/*
* Copyright (C) 2015, Google Inc.
* and other copyright owners as documented in the project's IP log.
*
* This program and the accompanying materials are made available
* under the terms of the Eclipse Distribution License v1.0 which
* accompanies this distribution, is reproduced below, and is
* available at http://www.eclipse.org/org/documents/edl-v10.php
*
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or
* without modification, are permitted provided that the following
* conditions are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the following
* disclaimer in the documentation and/or other materials provided
* with the distribution.
*
* - Neither the name of the Eclipse Foundation, Inc. nor the
* names of its contributors may be used to endorse or promote
* products derived from this software without specific prior
* written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.eclipse.jgit.annotations;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.LOCAL_VARIABLE;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* JGit's replacement for the {@code javax.annotations.Nullable}.
* <p>
* Denotes that a local variable, parameter, field, method return value can be
* {@code null}.
*/
@Documented
@Retention(RetentionPolicy.CLASS)
@Target({ FIELD, METHOD, PARAMETER, LOCAL_VARIABLE })
public @interface Nullable {
// marker annotation with no members
}

8
org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java

@ -65,7 +65,7 @@ import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import org.eclipse.jdt.annotation.Nullable; import org.eclipse.jgit.annotations.Nullable;
import org.eclipse.jgit.api.errors.JGitInternalException; import org.eclipse.jgit.api.errors.JGitInternalException;
import org.eclipse.jgit.internal.JGitText; import org.eclipse.jgit.internal.JGitText;
import org.eclipse.jgit.lib.Constants; import org.eclipse.jgit.lib.Constants;
@ -404,7 +404,8 @@ public abstract class FS {
* as component array * as component array
* @param encoding * @param encoding
* to be used to parse the command's output * to be used to parse the command's output
* @return the one-line output of the command * @return the one-line output of the command or {@code null} if there is
* none
*/ */
@Nullable @Nullable
protected static String readPipe(File dir, String[] command, String encoding) { protected static String readPipe(File dir, String[] command, String encoding) {
@ -423,7 +424,8 @@ public abstract class FS {
* @param env * @param env
* Map of environment variables to be merged with those of the * Map of environment variables to be merged with those of the
* current process * current process
* @return the one-line output of the command * @return the one-line output of the command or {@code null} if there is
* none
* @since 4.0 * @since 4.0
*/ */
@Nullable @Nullable

Loading…
Cancel
Save