use of com.meisolsson.githubsdk.model.User in project PocketHub by pockethub.
the class RepositoryViewActivity method onCreate.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
repository = getParcelableExtra(EXTRA_REPOSITORY);
loadingBar = finder.find(R.id.progress_bar);
User owner = repository.owner();
ActionBar actionBar = getSupportActionBar();
actionBar.setTitle(repository.name());
actionBar.setSubtitle(owner.login());
actionBar.setDisplayHomeAsUpEnabled(true);
if (owner.avatarUrl() != null && RepositoryUtils.isComplete(repository)) {
checkReadme();
} else {
avatars.bind(getSupportActionBar(), owner);
ViewUtils.setGone(loadingBar, false);
setGone(true);
ServiceGenerator.createService(this, RepositoryService.class).getRepository(repository.owner().login(), repository.name()).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).compose(this.<Repository>bindToLifecycle()).subscribe(new ObserverAdapter<Repository>() {
@Override
public void onSuccess(Repository repo) {
repository = repo;
checkReadme();
}
@Override
public void onError(Throwable e) {
ToastUtils.show(RepositoryViewActivity.this, R.string.error_repo_load);
ViewUtils.setGone(loadingBar, true);
}
});
}
}
use of com.meisolsson.githubsdk.model.User in project PocketHub by pockethub.
the class UserEventMatcher method getUsers.
/**
* Get {@link UserPair} from event
*
* @param event
* @return user or null if event doesn't apply
*/
public UserPair getUsers(final GitHubEvent event) {
if (event == null || event.payload() == null) {
return null;
}
GitHubEventType type = event.type();
if (GitHubEventType.FollowEvent.equals(type)) {
User from = event.actor();
User to = ((FollowPayload) event.payload()).target();
if (from != null && to != null) {
return new UserPair(from, to);
}
}
return null;
}
use of com.meisolsson.githubsdk.model.User in project PocketHub by pockethub.
the class NewsFragment method onListItemLongClick.
@Override
public boolean onListItemLongClick(ListView l, View v, int position, long itemId) {
if (!isUsable()) {
return false;
}
final GitHubEvent event = (GitHubEvent) l.getItemAtPosition(position);
final Repository repo = ConvertUtils.eventRepoToRepo(event.repo());
final User user = event.actor();
if (repo != null && user != null) {
final MaterialDialog.Builder builder = new MaterialDialog.Builder(getActivity()).title(R.string.navigate_to);
// Hacky but necessary since material dialogs has a different API
final MaterialDialog[] dialogHolder = new MaterialDialog[1];
View view = getActivity().getLayoutInflater().inflate(R.layout.nav_dialog, null);
ViewFinder finder = new ViewFinder(view);
avatars.bind(finder.imageView(R.id.iv_user_avatar), user);
avatars.bind(finder.imageView(R.id.iv_repo_avatar), repo.owner());
finder.setText(R.id.tv_login, user.login());
finder.setText(R.id.tv_repo_name, InfoUtils.createRepoId(repo));
finder.onClick(R.id.ll_user_area, new OnClickListener() {
@Override
public void onClick(View v) {
dialogHolder[0].dismiss();
viewUser(user);
}
});
finder.onClick(R.id.ll_repo_area, new OnClickListener() {
@Override
public void onClick(View v) {
dialogHolder[0].dismiss();
viewRepository(repo);
}
});
builder.customView(view, false);
MaterialDialog dialog = builder.build();
dialogHolder[0] = dialog;
dialog.setCanceledOnTouchOutside(true);
dialog.show();
return true;
}
return false;
}
use of com.meisolsson.githubsdk.model.User in project PocketHub by pockethub.
the class OrganizationRepositories method loadFrom.
@Override
public Repository loadFrom(Cursor cursor) {
User owner = User.builder().login(cursor.getString(3)).id(cursor.getInt(2)).avatarUrl(cursor.getString(4)).build();
Permissions permissions = Permissions.builder().admin(cursor.getInt(13) == 1).push(cursor.getInt(14) == 1).pull(cursor.getInt(15) == 1).build();
return Repository.builder().owner(owner).name(cursor.getString(1)).id(cursor.getLong(0)).isPrivate(cursor.getInt(5) == 1).isFork(cursor.getInt(6) == 1).description(cursor.getString(7)).forksCount(cursor.getInt(8)).watchersCount(cursor.getInt(9)).language(cursor.getString(10)).hasIssues(cursor.getInt(11) == 1).mirrorUrl(cursor.getString(12)).permissions(permissions).build();
}
use of com.meisolsson.githubsdk.model.User in project PocketHub by pockethub.
the class Organizations method store.
@Override
public void store(SQLiteDatabase db, List<User> orgs) {
db.delete("orgs", null, null);
if (orgs.isEmpty()) {
return;
}
ContentValues values = new ContentValues(3);
for (User user : orgs) {
values.clear();
values.put("id", user.id());
db.replace("orgs", null, values);
values.put("name", user.login());
values.put("avatarurl", user.avatarUrl());
db.replace("users", null, values);
}
}
Aggregations