mirror of
https://github.com/jlengrand/github-api.git
synced 2026-04-04 15:50:52 +00:00
Merge pull request #306 from stephenc/offline-support
Add offline support to the API to make parsing events easier
This commit is contained in:
@@ -216,6 +216,24 @@ public class GitHub {
|
||||
return new GitHubBuilder().withEndpoint(apiUrl).build();
|
||||
}
|
||||
|
||||
/**
|
||||
* An offline-only {@link GitHub} useful for parsing event notification from an unknown source.
|
||||
*
|
||||
* All operations that require a connection will fail.
|
||||
*
|
||||
* @return An offline-only {@link GitHub}.
|
||||
*/
|
||||
public static GitHub offline() {
|
||||
try {
|
||||
return new GitHubBuilder()
|
||||
.withEndpoint("https://api.github.invalid")
|
||||
.withConnector(HttpConnector.OFFLINE)
|
||||
.build();
|
||||
} catch (IOException e) {
|
||||
throw new IllegalStateException("The offline implementation constructor should not connect", e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Is this an anonymous connection
|
||||
* @return {@code true} if operations that require authentication will fail.
|
||||
@@ -224,6 +242,14 @@ public class GitHub {
|
||||
return login==null && encodedAuthorization==null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Is this an always offline "connection".
|
||||
* @return {@code true} if this is an always offline "connection".
|
||||
*/
|
||||
public boolean isOffline() {
|
||||
return connector == HttpConnector.OFFLINE;
|
||||
}
|
||||
|
||||
public HttpConnector getConnector() {
|
||||
return connector;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user