mirror of
https://github.com/TwidereProject/Twidere-Android
synced 2025-02-02 17:56:56 +01:00
fixed cursor list
This commit is contained in:
parent
94788c7c3c
commit
edb3ec506b
@ -70,15 +70,17 @@ public final class PageableResponseList$$JsonObjectMapper<T> extends JsonMapper<
|
||||
}
|
||||
case "previous_cursor": {
|
||||
instance.previousCursor = jsonParser.getValueAsLong();
|
||||
break;
|
||||
}
|
||||
case "next_cursor": {
|
||||
instance.nextCursor = jsonParser.getValueAsLong();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void serialize(PageableResponseList<T> object, JsonGenerator jsonGenerator, boolean writeStartAndEnd) throws IOException {
|
||||
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
}
|
||||
|
@ -29,8 +29,8 @@ import java.util.ArrayList;
|
||||
*/
|
||||
public class PageableResponseList<T> extends ArrayList<T> implements TwitterResponse, CursorSupport {
|
||||
|
||||
private int accessLevel;
|
||||
private RateLimitStatus rateLimitStatus;
|
||||
int accessLevel;
|
||||
RateLimitStatus rateLimitStatus;
|
||||
long previousCursor;
|
||||
long nextCursor;
|
||||
|
||||
@ -53,12 +53,12 @@ public class PageableResponseList<T> extends ArrayList<T> implements TwitterResp
|
||||
|
||||
@Override
|
||||
public long getNextCursor() {
|
||||
return 0;
|
||||
return nextCursor;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getPreviousCursor() {
|
||||
return 0;
|
||||
return previousCursor;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -22,16 +22,15 @@ package org.mariotaku.twidere.loader.support;
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import org.mariotaku.twidere.api.twitter.Twitter;
|
||||
import org.mariotaku.twidere.api.twitter.TwitterException;
|
||||
import org.mariotaku.twidere.api.twitter.model.PageableResponseList;
|
||||
import org.mariotaku.twidere.api.twitter.model.Paging;
|
||||
import org.mariotaku.twidere.api.twitter.model.User;
|
||||
import org.mariotaku.twidere.model.ParcelableUser;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.mariotaku.twidere.api.twitter.model.PageableResponseList;
|
||||
import org.mariotaku.twidere.api.twitter.model.Paging;
|
||||
import org.mariotaku.twidere.api.twitter.Twitter;
|
||||
import org.mariotaku.twidere.api.twitter.TwitterException;
|
||||
import org.mariotaku.twidere.api.twitter.model.User;
|
||||
|
||||
public abstract class CursorSupportUsersLoader extends BaseCursorSupportUsersLoader {
|
||||
|
||||
public CursorSupportUsersLoader(final Context context, final long accountId, final long cursor,
|
||||
@ -39,19 +38,18 @@ public abstract class CursorSupportUsersLoader extends BaseCursorSupportUsersLoa
|
||||
super(context, accountId, cursor, data, fromUser);
|
||||
}
|
||||
|
||||
protected abstract PageableResponseList<User> getCursoredUsers(Twitter twitter, Paging paging)
|
||||
@NonNull
|
||||
protected abstract PageableResponseList<User> getCursoredUsers(@NonNull Twitter twitter, Paging paging)
|
||||
throws TwitterException;
|
||||
|
||||
@Override
|
||||
protected final List<User> getUsers(@NonNull final Twitter twitter) throws TwitterException {
|
||||
if (twitter == null) return null;
|
||||
final Paging paging = new Paging();
|
||||
paging.count(getCount());
|
||||
if (getCursor() > 0) {
|
||||
paging.setCursor(getCursor());
|
||||
}
|
||||
final PageableResponseList<User> users = getCursoredUsers(twitter, paging);
|
||||
if (users == null) return null;
|
||||
setCursorIds(users);
|
||||
return users;
|
||||
}
|
||||
|
@ -20,6 +20,7 @@
|
||||
package org.mariotaku.twidere.loader.support;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import org.mariotaku.twidere.model.ParcelableUser;
|
||||
|
||||
@ -38,10 +39,10 @@ public class MutesUsersLoader extends CursorSupportUsersLoader {
|
||||
super(context, accountId, cursor, data, fromUser);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
protected final PageableResponseList<User> getCursoredUsers(final Twitter twitter, final Paging paging)
|
||||
protected final PageableResponseList<User> getCursoredUsers(@NonNull final Twitter twitter, final Paging paging)
|
||||
throws TwitterException {
|
||||
if (twitter == null) return null;
|
||||
return twitter.getMutesUsersList(paging);
|
||||
}
|
||||
|
||||
|
@ -20,6 +20,7 @@
|
||||
package org.mariotaku.twidere.loader.support;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import org.mariotaku.twidere.model.ParcelableUser;
|
||||
|
||||
@ -38,10 +39,10 @@ public class UserBlocksLoader extends CursorSupportUsersLoader {
|
||||
super(context, accountId, cursor, data, fromUser);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
protected final PageableResponseList<User> getCursoredUsers(final Twitter twitter, final Paging paging)
|
||||
protected final PageableResponseList<User> getCursoredUsers(@NonNull final Twitter twitter, final Paging paging)
|
||||
throws TwitterException {
|
||||
if (twitter == null) return null;
|
||||
return twitter.getBlocksList(paging);
|
||||
}
|
||||
|
||||
|
@ -20,6 +20,7 @@
|
||||
package org.mariotaku.twidere.loader.support;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import org.mariotaku.twidere.model.ParcelableUser;
|
||||
|
||||
@ -44,14 +45,14 @@ public class UserFollowersLoader extends CursorSupportUsersLoader {
|
||||
mScreenName = screenName;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
protected PageableResponseList<User> getCursoredUsers(final Twitter twitter, final Paging paging)
|
||||
protected PageableResponseList<User> getCursoredUsers(@NonNull final Twitter twitter, final Paging paging)
|
||||
throws TwitterException {
|
||||
if (twitter == null) return null;
|
||||
if (mUserId > 0)
|
||||
return twitter.getFollowersList(mUserId, paging);
|
||||
else if (mScreenName != null) return twitter.getFollowersList(mScreenName, paging);
|
||||
return null;
|
||||
throw new TwitterException("user_id or screen_name required");
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -20,6 +20,7 @@
|
||||
package org.mariotaku.twidere.loader.support;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import org.mariotaku.twidere.model.ParcelableUser;
|
||||
|
||||
@ -44,14 +45,14 @@ public class UserFriendsLoader extends CursorSupportUsersLoader {
|
||||
mScreenName = screenName;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
protected PageableResponseList<User> getCursoredUsers(final Twitter twitter, final Paging paging)
|
||||
protected PageableResponseList<User> getCursoredUsers(@NonNull final Twitter twitter, final Paging paging)
|
||||
throws TwitterException {
|
||||
if (twitter == null) return null;
|
||||
if (mUserId > 0)
|
||||
return twitter.getFriendsList(mUserId, paging);
|
||||
else if (mScreenName != null) return twitter.getFriendsList(mScreenName, paging);
|
||||
return null;
|
||||
throw new TwitterException("user_id or screen_name required");
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -20,6 +20,7 @@
|
||||
package org.mariotaku.twidere.loader.support;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import org.mariotaku.twidere.model.ParcelableUser;
|
||||
|
||||
@ -47,17 +48,17 @@ public class UserListMembersLoader extends CursorSupportUsersLoader {
|
||||
mListName = listName;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public PageableResponseList<User> getCursoredUsers(final Twitter twitter, final Paging paging)
|
||||
public PageableResponseList<User> getCursoredUsers(@NonNull final Twitter twitter, final Paging paging)
|
||||
throws TwitterException {
|
||||
if (twitter == null) return null;
|
||||
if (mListId > 0)
|
||||
return twitter.getUserListMembers(mListId, paging);
|
||||
else if (mUserId > 0)
|
||||
return twitter.getUserListMembers(mListName.replace(' ', '-'), mUserId, paging);
|
||||
else if (mScreenName != null)
|
||||
return twitter.getUserListMembers(mListName.replace(' ', '-'), mScreenName, paging);
|
||||
return null;
|
||||
throw new TwitterException("list_id or list_name and user_id (or screen_name) required");
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -20,17 +20,17 @@
|
||||
package org.mariotaku.twidere.loader.support;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import org.mariotaku.twidere.api.twitter.Twitter;
|
||||
import org.mariotaku.twidere.api.twitter.TwitterException;
|
||||
import org.mariotaku.twidere.api.twitter.model.PageableResponseList;
|
||||
import org.mariotaku.twidere.api.twitter.model.Paging;
|
||||
import org.mariotaku.twidere.api.twitter.model.User;
|
||||
import org.mariotaku.twidere.model.ParcelableUser;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.mariotaku.twidere.api.twitter.model.PageableResponseList;
|
||||
import org.mariotaku.twidere.api.twitter.model.Paging;
|
||||
import org.mariotaku.twidere.api.twitter.Twitter;
|
||||
import org.mariotaku.twidere.api.twitter.TwitterException;
|
||||
import org.mariotaku.twidere.api.twitter.model.User;
|
||||
|
||||
public class UserListSubscribersLoader extends CursorSupportUsersLoader {
|
||||
|
||||
private final long mListId;
|
||||
@ -47,17 +47,17 @@ public class UserListSubscribersLoader extends CursorSupportUsersLoader {
|
||||
mListName = listName;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public PageableResponseList<User> getCursoredUsers(final Twitter twitter, final Paging paging)
|
||||
public PageableResponseList<User> getCursoredUsers(@NonNull final Twitter twitter, final Paging paging)
|
||||
throws TwitterException {
|
||||
if (twitter == null) return null;
|
||||
if (mListId > 0)
|
||||
return twitter.getUserListSubscribers(mListId, paging);
|
||||
else if (mUserId > 0)
|
||||
return twitter.getUserListSubscribers(mListName.replace(' ', '-'), mUserId, paging);
|
||||
else if (mScreenName != null)
|
||||
return twitter.getUserListSubscribers(mListName.replace(' ', '-'), mScreenName, paging);
|
||||
return null;
|
||||
throw new TwitterException("list_id or list_name and user_id (or screen_name) required");
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -61,7 +61,6 @@ import org.mariotaku.twidere.model.ParcelableCredentials;
|
||||
import org.mariotaku.twidere.model.RequestType;
|
||||
import org.mariotaku.twidere.provider.TwidereDataStore;
|
||||
import org.mariotaku.twidere.util.dagger.DependencyHolder;
|
||||
import org.mariotaku.twidere.util.net.InetAddressUtils;
|
||||
import org.mariotaku.twidere.util.net.NetworkUsageUtils;
|
||||
import org.mariotaku.twidere.util.net.TwidereProxySelector;
|
||||
|
||||
@ -171,17 +170,9 @@ public class TwitterAPIFactory implements TwidereConstants {
|
||||
final String proxyHost = prefs.getString(KEY_PROXY_HOST, null);
|
||||
final int proxyPort = NumberUtils.toInt(prefs.getString(KEY_PROXY_PORT, null), -1);
|
||||
if (!isEmpty(proxyHost) && TwidereMathUtils.inRangeInclusiveInclusive(proxyPort, 0, 65535)) {
|
||||
// If proxy host is an IP address, use proxy directly
|
||||
if (InetAddressUtils.getInetAddressType(proxyHost) != 0) {
|
||||
client.setProxySelector(null);
|
||||
client.setProxy(new Proxy(getProxyType(proxyType),
|
||||
InetSocketAddress.createUnresolved(proxyHost, proxyPort)));
|
||||
} else {
|
||||
// ... otherwise use proxy selector to prevent proxy address from dns poisoning
|
||||
client.setProxy(null);
|
||||
client.setProxySelector(new TwidereProxySelector(context, getProxyType(proxyType),
|
||||
proxyHost, proxyPort));
|
||||
}
|
||||
client.setProxy(null);
|
||||
client.setProxySelector(new TwidereProxySelector(context, getProxyType(proxyType),
|
||||
proxyHost, proxyPort));
|
||||
}
|
||||
final String username = prefs.getString(KEY_PROXY_USERNAME, null);
|
||||
final String password = prefs.getString(KEY_PROXY_PASSWORD, null);
|
||||
|
Loading…
x
Reference in New Issue
Block a user