{"action":"created","comment":{"url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/comments/140872090","pull_request_review_id":64976754,"id":140872090,"diff_hunk":"@@ -1,275 +1,209 @@\n package co.infinum.princeofversions;\n \n import android.content.Context;\n-import android.content.pm.PackageManager;\n-import android.support.annotation.NonNull;\n-\n-import co.infinum.princeofversions.callbacks.UpdaterCallback;\n-import co.infinum.princeofversions.exceptions.LoaderValidationException;\n-import co.infinum.princeofversions.helpers.ContextHelper;\n-import co.infinum.princeofversions.helpers.PovFactoryHelper;\n-import co.infinum.princeofversions.helpers.PrefsVersionRepository;\n-import co.infinum.princeofversions.helpers.SdkVersionProviderImpl;\n-import co.infinum.princeofversions.helpers.parsers.JsonVersionConfigParser;\n-import co.infinum.princeofversions.helpers.parsers.ParserFactory;\n-import co.infinum.princeofversions.helpers.parsers.VersionConfigParser;\n-import co.infinum.princeofversions.interfaces.SdkVersionProvider;\n-import co.infinum.princeofversions.interfaces.VersionRepository;\n-import co.infinum.princeofversions.interfaces.VersionVerifier;\n-import co.infinum.princeofversions.interfaces.VersionVerifierFactory;\n-import co.infinum.princeofversions.loaders.factories.NetworkLoaderFactory;\n-import co.infinum.princeofversions.mvp.presenter.PovPresenter;\n-import co.infinum.princeofversions.threading.ExecutorServiceVersionVerifier;\n+import android.support.annotation.VisibleForTesting;\n \n /**\n  * This class represents main entry point for using library.\n  * <p>\n- * Most common way to create instance of this class should be using constructor with two arguments, providing application context\n- * Context and callback class UpdaterCallback with methods for accepting result of update check.\n+ * Most common way to create instance of this class should be using {@link Builder} or constructor with {@link Context} argument.\n  * </p>\n  * <p>\n- * There are two forms of checkForUpdates method: default one with one argument of type String and more powerful one which accepts\n- * LoaderFactory factory interface for creating loader of type UpdateConfigLoader. That way it is possible to use library with custom\n- * implementation of loader, for configuring library to load update resource from file, string or on some other way. Default method\n- * use NetworkLoaderFactory, eg. String argument represents url from which update resource will be downloaded.\n+ * To check if update exists you can use two different approaches: synchronous and asynchronous.\n  * </p>\n  * <p>\n- * Also, library has cancel option for stopping loading and check process. If checking is cancelled no result will be returned\n- * to callback.\n+ * Depending on used approach there are several versions of checkForUpdates method.\n+ * Synchronous execution is possible using checkForUpdates methods with one parameter ({@link Loader} or {@link String} as URL from which\n+ * update configuration will be downloaded.\n+ * Asynchronous execution expects one more parameter: {@link UpdaterCallback} callback through which results will be notified. Also,\n+ * there you can specify custom {@link Executor}, class which should run process, usually on background thread.\n+ * With this approach checkForUpdates method returns {@link PrinceOfVersionsCall} object which you can use to cancel request.\n  * </p>\n  *\n- * There is code for most common usage of this library\n- * <pre>\n- *         UpdateChecker updater = new DefaultUpdater(context, callback);\n- *         LoaderFactory loaderFactory = new NetworkLoaderFactory(\"http://example.com/some/update.json\");\n- *         updater.checkForUpdates(loaderFactory); // starts checking for updates using NetworkLoader\n- *     </pre>\n- *\n- * Example of using library with custom loader follows bellow.\n+ * Here is code for most common usage of this library\n  * <pre>\n- *         UpdateChecker updater = new DefaultUpdater(context, callback);\n- *         LoaderFactory loaderFactory = new FileLoaderFactory(\"path/to/file\");\n- *         updater.checkForUpdates(loaderFactory); // starts checking for updates using custom loader\n- *     </pre>\n- *\n- * <p>\n- * <b>Be aware, when implementing custom loader factory always return new instance of custom loader in newInstance method!</b>\n- * This is important because of cancel functionality. There is no way once cancelled loader became uncancelled, so to support correct\n- * cancel functionality always provide new instance of loader.\n- * </p>\n+ *         {@link PrinceOfVersions} updater = new {@link PrinceOfVersions}(context);\n+ *         {@link PrinceOfVersionsCall} call = updater.checkForUpdates(\"http://example.com/some/update.json\", callback); // starts checking\n+ * for update\n+ * </pre>\n  */\n public class PrinceOfVersions {\n \n-    /**\n-     * Factory for creating VersionVerifier instance.\n-     */\n-    private VersionVerifierFactory factory;\n+    private static Parser createDefaultParser() {\n+        return new JsonParser();\n+    }\n \n-    /**\n-     * Repository for persisting library data.\n-     */\n-    private VersionRepository repository;\n+    private static Storage createDefaultStorage(Context context) {\n+        return new PrinceOfVersionsDefaultStorage(context);\n+    }\n \n-    /**\n-     * SDK int provider\n-     */\n-    private SdkVersionProvider sdkVersionProvider;\n+    private static VersionParser createDefaultVersionParser() {\n+        return new PrinceOfVersionsDefaultVersionParser();\n+    }\n \n-    /**\n-     * Creates a new instance of updater for application associated with provided context.\n-     *\n-     * @param context Context of associated application.\n-     */\n-    public PrinceOfVersions(@NonNull final Context context) {\n-        this(context.getApplicationContext(), createDefaultVersionVerifierFactory(new ParserFactory() {\n-            @Override\n-            public VersionConfigParser newInstance() {\n-                try {\n-                    return new JsonVersionConfigParser(ContextHelper.getAppVersion(context.getApplicationContext()));\n-                } catch (PackageManager.NameNotFoundException e) {\n-                    throw new IllegalArgumentException(\"Current version not available.\");\n-                }\n-            }\n-        }));\n+    private static ApplicationConfiguration createAppConfig(Context context) {\n+        return new ApplicationConfigurationImpl(context);\n     }\n \n+    private Presenter presenter;\n+\n+    private ApplicationConfiguration appConfig;\n+\n     /**\n-     * Creates a new instance of updater for application associated with provided context using custom parser implementation.\n+     * Creates {@link PrinceOfVersions} using provided {@link Context}.\n      *\n-     * @param context       Context of associated application.\n-     * @param parserFactory Factory for creating custom parser for parsing loaded content.\n+     * @param context context which will be used for checking application version.\n      */\n-    public PrinceOfVersions(@NonNull final Context context, ParserFactory parserFactory) {\n-        this(context.getApplicationContext(), createDefaultVersionVerifierFactory(parserFactory));\n+    public PrinceOfVersions(Context context) {","path":"prince-of-versions/src/main/java/co/infinum/princeofversions/PrinceOfVersions.java","position":135,"original_position":135,"commit_id":"7b50f4b6e558eb2c619507f2e8266e30740c4a6d","original_commit_id":"7b50f4b6e558eb2c619507f2e8266e30740c4a6d","user":{"login":"igotepava","id":10145940,"avatar_url":"https://avatars0.githubusercontent.com/u/10145940?v=4","gravatar_id":"","url":"https://api.github.com/users/igotepava","html_url":"https://github.com/igotepava","followers_url":"https://api.github.com/users/igotepava/followers","following_url":"https://api.github.com/users/igotepava/following{/other_user}","gists_url":"https://api.github.com/users/igotepava/gists{/gist_id}","starred_url":"https://api.github.com/users/igotepava/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/igotepava/subscriptions","organizations_url":"https://api.github.com/users/igotepava/orgs","repos_url":"https://api.github.com/users/igotepava/repos","events_url":"https://api.github.com/users/igotepava/events{/privacy}","received_events_url":"https://api.github.com/users/igotepava/received_events","type":"User","site_admin":false},"body":"Since `PrinceOfVersions.Builder().build(Context);` does exactly the same thing as this constructor, do you think it would be wise for this class to be constructible only with the builder? In my opinion, that way it would be less error-prone and less confusing for developers.","created_at":"2017-09-25T19:18:05Z","updated_at":"2017-09-25T19:32:10Z","html_url":"https://github.com/infinum/Android-Prince-of-Versions/pull/54#discussion_r140872090","pull_request_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/54","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/comments/140872090"},"html":{"href":"https://github.com/infinum/Android-Prince-of-Versions/pull/54#discussion_r140872090"},"pull_request":{"href":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/54"}}},"pull_request":{"url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/54","id":128203719,"html_url":"https://github.com/infinum/Android-Prince-of-Versions/pull/54","diff_url":"https://github.com/infinum/Android-Prince-of-Versions/pull/54.diff","patch_url":"https://github.com/infinum/Android-Prince-of-Versions/pull/54.patch","issue_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues/54","number":54,"state":"open","locked":false,"title":"Synchronous update check and Throwable in onError","user":{"login":"antunflas","id":11513807,"avatar_url":"https://avatars0.githubusercontent.com/u/11513807?v=4","gravatar_id":"","url":"https://api.github.com/users/antunflas","html_url":"https://github.com/antunflas","followers_url":"https://api.github.com/users/antunflas/followers","following_url":"https://api.github.com/users/antunflas/following{/other_user}","gists_url":"https://api.github.com/users/antunflas/gists{/gist_id}","starred_url":"https://api.github.com/users/antunflas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/antunflas/subscriptions","organizations_url":"https://api.github.com/users/antunflas/orgs","repos_url":"https://api.github.com/users/antunflas/repos","events_url":"https://api.github.com/users/antunflas/events{/privacy}","received_events_url":"https://api.github.com/users/antunflas/received_events","type":"User","site_admin":false},"body":"This PR adds support for synchronous update check.\r\n\r\nCode is refactored so that major part of code easily can be reused in both sync and async requests.\r\n`onError` callback method now has `Throwable` as argument instead of error code. This should resolve issue #50.\r\n\r\nYou have some different opinions about issue #49 so by default library is still using semantic version parsing, but from now on it is possible to define custom version parser in which you can handle the issue.\r\n\r\nReadme, all tests and javadoc are rewritten, also after refactoring all tests uses jUnit so Robolectric is removed from project.","created_at":"2017-06-29T17:16:17Z","updated_at":"2017-09-25T19:32:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"49a010f227c4f3f02a6c81897de4fce52547cbb8","assignee":null,"assignees":[],"requested_reviewers":[{"login":"kjurkovic","id":832352,"avatar_url":"https://avatars1.githubusercontent.com/u/832352?v=4","gravatar_id":"","url":"https://api.github.com/users/kjurkovic","html_url":"https://github.com/kjurkovic","followers_url":"https://api.github.com/users/kjurkovic/followers","following_url":"https://api.github.com/users/kjurkovic/following{/other_user}","gists_url":"https://api.github.com/users/kjurkovic/gists{/gist_id}","starred_url":"https://api.github.com/users/kjurkovic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kjurkovic/subscriptions","organizations_url":"https://api.github.com/users/kjurkovic/orgs","repos_url":"https://api.github.com/users/kjurkovic/repos","events_url":"https://api.github.com/users/kjurkovic/events{/privacy}","received_events_url":"https://api.github.com/users/kjurkovic/received_events","type":"User","site_admin":false},{"login":"reisub","id":992835,"avatar_url":"https://avatars2.githubusercontent.com/u/992835?v=4","gravatar_id":"","url":"https://api.github.com/users/reisub","html_url":"https://github.com/reisub","followers_url":"https://api.github.com/users/reisub/followers","following_url":"https://api.github.com/users/reisub/following{/other_user}","gists_url":"https://api.github.com/users/reisub/gists{/gist_id}","starred_url":"https://api.github.com/users/reisub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/reisub/subscriptions","organizations_url":"https://api.github.com/users/reisub/orgs","repos_url":"https://api.github.com/users/reisub/repos","events_url":"https://api.github.com/users/reisub/events{/privacy}","received_events_url":"https://api.github.com/users/reisub/received_events","type":"User","site_admin":false},{"login":"ikocijan","id":4410310,"avatar_url":"https://avatars0.githubusercontent.com/u/4410310?v=4","gravatar_id":"","url":"https://api.github.com/users/ikocijan","html_url":"https://github.com/ikocijan","followers_url":"https://api.github.com/users/ikocijan/followers","following_url":"https://api.github.com/users/ikocijan/following{/other_user}","gists_url":"https://api.github.com/users/ikocijan/gists{/gist_id}","starred_url":"https://api.github.com/users/ikocijan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ikocijan/subscriptions","organizations_url":"https://api.github.com/users/ikocijan/orgs","repos_url":"https://api.github.com/users/ikocijan/repos","events_url":"https://api.github.com/users/ikocijan/events{/privacy}","received_events_url":"https://api.github.com/users/ikocijan/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/54/commits","review_comments_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/54/comments","review_comment_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/comments{/number}","comments_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues/54/comments","statuses_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/statuses/7b50f4b6e558eb2c619507f2e8266e30740c4a6d","head":{"label":"infinum:feature/sync","ref":"feature/sync","sha":"7b50f4b6e558eb2c619507f2e8266e30740c4a6d","user":{"login":"infinum","id":97652,"avatar_url":"https://avatars1.githubusercontent.com/u/97652?v=4","gravatar_id":"","url":"https://api.github.com/users/infinum","html_url":"https://github.com/infinum","followers_url":"https://api.github.com/users/infinum/followers","following_url":"https://api.github.com/users/infinum/following{/other_user}","gists_url":"https://api.github.com/users/infinum/gists{/gist_id}","starred_url":"https://api.github.com/users/infinum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/infinum/subscriptions","organizations_url":"https://api.github.com/users/infinum/orgs","repos_url":"https://api.github.com/users/infinum/repos","events_url":"https://api.github.com/users/infinum/events{/privacy}","received_events_url":"https://api.github.com/users/infinum/received_events","type":"Organization","site_admin":false},"repo":{"id":62612367,"name":"Android-Prince-of-Versions","full_name":"infinum/Android-Prince-of-Versions","owner":{"login":"infinum","id":97652,"avatar_url":"https://avatars1.githubusercontent.com/u/97652?v=4","gravatar_id":"","url":"https://api.github.com/users/infinum","html_url":"https://github.com/infinum","followers_url":"https://api.github.com/users/infinum/followers","following_url":"https://api.github.com/users/infinum/following{/other_user}","gists_url":"https://api.github.com/users/infinum/gists{/gist_id}","starred_url":"https://api.github.com/users/infinum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/infinum/subscriptions","organizations_url":"https://api.github.com/users/infinum/orgs","repos_url":"https://api.github.com/users/infinum/repos","events_url":"https://api.github.com/users/infinum/events{/privacy}","received_events_url":"https://api.github.com/users/infinum/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/infinum/Android-Prince-of-Versions","description":"Android library for handling app update notifications","fork":false,"url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions","forks_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/forks","keys_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/keys{/key_id}","collaborators_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/teams","hooks_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/hooks","issue_events_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues/events{/number}","events_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/events","assignees_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/assignees{/user}","branches_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/branches{/branch}","tags_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/tags","blobs_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/refs{/sha}","trees_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/trees{/sha}","statuses_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/statuses/{sha}","languages_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/languages","stargazers_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/stargazers","contributors_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/contributors","subscribers_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/subscribers","subscription_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/subscription","commits_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/commits{/sha}","git_commits_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/commits{/sha}","comments_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/comments{/number}","issue_comment_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues/comments{/number}","contents_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/contents/{+path}","compare_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/compare/{base}...{head}","merges_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/merges","archive_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/downloads","issues_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues{/number}","pulls_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls{/number}","milestones_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/milestones{/number}","notifications_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/labels{/name}","releases_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/releases{/id}","deployments_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/deployments","created_at":"2016-07-05T06:41:56Z","updated_at":"2017-09-20T13:27:32Z","pushed_at":"2017-06-29T17:16:18Z","git_url":"git://github.com/infinum/Android-Prince-of-Versions.git","ssh_url":"git@github.com:infinum/Android-Prince-of-Versions.git","clone_url":"https://github.com/infinum/Android-Prince-of-Versions.git","svn_url":"https://github.com/infinum/Android-Prince-of-Versions","homepage":"","size":439,"stargazers_count":24,"watchers_count":24,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"open_issues_count":6,"forks":3,"open_issues":6,"watchers":24,"default_branch":"dev"}},"base":{"label":"infinum:dev","ref":"dev","sha":"b6bdd99af6a1fb14bfb7646e59b7a9c03f8a9145","user":{"login":"infinum","id":97652,"avatar_url":"https://avatars1.githubusercontent.com/u/97652?v=4","gravatar_id":"","url":"https://api.github.com/users/infinum","html_url":"https://github.com/infinum","followers_url":"https://api.github.com/users/infinum/followers","following_url":"https://api.github.com/users/infinum/following{/other_user}","gists_url":"https://api.github.com/users/infinum/gists{/gist_id}","starred_url":"https://api.github.com/users/infinum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/infinum/subscriptions","organizations_url":"https://api.github.com/users/infinum/orgs","repos_url":"https://api.github.com/users/infinum/repos","events_url":"https://api.github.com/users/infinum/events{/privacy}","received_events_url":"https://api.github.com/users/infinum/received_events","type":"Organization","site_admin":false},"repo":{"id":62612367,"name":"Android-Prince-of-Versions","full_name":"infinum/Android-Prince-of-Versions","owner":{"login":"infinum","id":97652,"avatar_url":"https://avatars1.githubusercontent.com/u/97652?v=4","gravatar_id":"","url":"https://api.github.com/users/infinum","html_url":"https://github.com/infinum","followers_url":"https://api.github.com/users/infinum/followers","following_url":"https://api.github.com/users/infinum/following{/other_user}","gists_url":"https://api.github.com/users/infinum/gists{/gist_id}","starred_url":"https://api.github.com/users/infinum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/infinum/subscriptions","organizations_url":"https://api.github.com/users/infinum/orgs","repos_url":"https://api.github.com/users/infinum/repos","events_url":"https://api.github.com/users/infinum/events{/privacy}","received_events_url":"https://api.github.com/users/infinum/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/infinum/Android-Prince-of-Versions","description":"Android library for handling app update notifications","fork":false,"url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions","forks_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/forks","keys_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/keys{/key_id}","collaborators_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/teams","hooks_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/hooks","issue_events_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues/events{/number}","events_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/events","assignees_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/assignees{/user}","branches_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/branches{/branch}","tags_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/tags","blobs_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/refs{/sha}","trees_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/trees{/sha}","statuses_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/statuses/{sha}","languages_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/languages","stargazers_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/stargazers","contributors_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/contributors","subscribers_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/subscribers","subscription_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/subscription","commits_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/commits{/sha}","git_commits_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/git/commits{/sha}","comments_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/comments{/number}","issue_comment_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues/comments{/number}","contents_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/contents/{+path}","compare_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/compare/{base}...{head}","merges_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/merges","archive_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/downloads","issues_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues{/number}","pulls_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls{/number}","milestones_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/milestones{/number}","notifications_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/labels{/name}","releases_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/releases{/id}","deployments_url":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/deployments","created_at":"2016-07-05T06:41:56Z","updated_at":"2017-09-20T13:27:32Z","pushed_at":"2017-06-29T17:16:18Z","git_url":"git://github.com/infinum/Android-Prince-of-Versions.git","ssh_url":"git@github.com:infinum/Android-Prince-of-Versions.git","clone_url":"https://github.com/infinum/Android-Prince-of-Versions.git","svn_url":"https://github.com/infinum/Android-Prince-of-Versions","homepage":"","size":439,"stargazers_count":24,"watchers_count":24,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"open_issues_count":6,"forks":3,"open_issues":6,"watchers":24,"default_branch":"dev"}},"_links":{"self":{"href":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/54"},"html":{"href":"https://github.com/infinum/Android-Prince-of-Versions/pull/54"},"issue":{"href":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues/54"},"comments":{"href":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/issues/54/comments"},"review_comments":{"href":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/54/comments"},"review_comment":{"href":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/pulls/54/commits"},"statuses":{"href":"https://api.github.com/repos/infinum/Android-Prince-of-Versions/statuses/7b50f4b6e558eb2c619507f2e8266e30740c4a6d"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"igotepava"}}