From 09212abe11d2ffba772cac46578e92c6607f8f69 Mon Sep 17 00:00:00 2001 From: Aagam Shah Date: Tue, 18 Jul 2017 00:12:57 +0530 Subject: [PATCH 1/7] Add initial changes for v2 API support #72 --- .../org/wordcamp/android/BaseActivity.java | 14 +- .../android/WordCampDetailActivity.java | 19 +- .../android/adapters/SessionsListAdapter.java | 7 +- .../android/adapters/WCListAdapter.java | 7 +- .../wordcamp/android/db/DBCommunicator.java | 81 +-- .../android/networking/WPAPIClient.java | 30 +- .../wordcamp/android/objects/WordCampDB.java | 33 +- .../android/objects/wordcamp/Author.java | 252 --------- .../android/objects/wordcamp/Links.java | 49 -- .../android/objects/wordcamp/Links_.java | 111 ---- .../android/objects/wordcamp/Meta.java | 30 - .../android/objects/wordcamp/Meta_.java | 30 - .../android/objects/wordcamp/PostMetum.java | 70 --- .../android/objects/wordcamp/WordCampNew.java | 521 ------------------ .../objects/wordcampv2/AvatarUrls.java | 43 ++ .../android/objects/wordcampv2/Content.java | 21 + .../android/objects/wordcampv2/Embedded.java | 33 ++ .../android/objects/wordcampv2/Meta.java | 54 ++ .../android/objects/wordcampv2/SessionV2.java | 199 +++++++ .../android/objects/wordcampv2/Speaker.java | 221 ++++++++ .../android/objects/wordcampv2/Title.java | 21 + .../android/objects/wordcampv2/WordCamp.java | 394 +++++++++++++ .../android/objects/wordcampv2/WpTerm.java | 65 +++ .../wordcamp/android/utils/WCConstants.java | 10 + .../wordcamp/android/utils/WordCampUtils.java | 33 +- .../wcdetails/SessionDetailsActivity.java | 14 +- .../wcdetails/SpeakerDetailsActivity.java | 6 +- 27 files changed, 1158 insertions(+), 1210 deletions(-) delete mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcamp/Author.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcamp/Links.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcamp/Links_.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta_.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcamp/PostMetum.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcamp/WordCampNew.java create mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcampv2/AvatarUrls.java create mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcampv2/Content.java create mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcampv2/Embedded.java create mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcampv2/Meta.java create mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcampv2/SessionV2.java create mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcampv2/Speaker.java create mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcampv2/Title.java create mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcampv2/WordCamp.java create mode 100644 app/src/main/java/org/wordcamp/android/objects/wordcampv2/WpTerm.java create mode 100644 app/src/main/java/org/wordcamp/android/utils/WCConstants.java diff --git a/app/src/main/java/org/wordcamp/android/BaseActivity.java b/app/src/main/java/org/wordcamp/android/BaseActivity.java index b8e0d18..70c4ce5 100644 --- a/app/src/main/java/org/wordcamp/android/BaseActivity.java +++ b/app/src/main/java/org/wordcamp/android/BaseActivity.java @@ -26,9 +26,8 @@ import org.wordcamp.android.networking.ResponseListener; import org.wordcamp.android.networking.WPAPIClient; import org.wordcamp.android.objects.WordCampDB; -import org.wordcamp.android.objects.wordcamp.WordCampNew; +import org.wordcamp.android.objects.wordcampv2.WordCamp; -import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; @@ -197,19 +196,20 @@ public void onErrorResponse(VolleyError error) { public void onResponseReceived(Object o) { try { wordCampsList = new ArrayList<>(); - WordCampNew[] wordCampNews = (WordCampNew[]) o; - for (WordCampNew wordcamp : wordCampNews) { + WordCamp[] wordCamps = (WordCamp[]) o; + for (WordCamp wordCamp : wordCamps) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss", Locale.getDefault()); - Date d = sdf.parse(wordcamp.getModifiedGmt()); - WordCampDB wordCampDB = new WordCampDB(wordcamp, d.toString()); + Date d = sdf.parse(wordCamp.getModifiedGmt()); + WordCampDB wordCampDB = new WordCampDB(wordCamp, d.toString()); if (!wordCampDB.getWc_start_date().isEmpty()) { wordCampsList.add(wordCampDB); } } + communicator.addAllNewWC(wordCampsList); refreshAllFragmentsData(); stopRefresh(); - } catch (ParseException e) { + } catch (Exception e) { e.printStackTrace(); stopRefresh(); } diff --git a/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java b/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java index 8a4fe9b..22540af 100644 --- a/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java +++ b/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java @@ -8,6 +8,7 @@ import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; +import android.text.Html; import android.view.Menu; import android.view.MenuItem; import android.widget.Toast; @@ -21,9 +22,9 @@ import org.wordcamp.android.networking.ResponseListener; import org.wordcamp.android.networking.WPAPIClient; import org.wordcamp.android.objects.WordCampDB; -import org.wordcamp.android.objects.speaker.Session; -import org.wordcamp.android.objects.speaker.SpeakerNew; -import org.wordcamp.android.objects.wordcamp.WordCampNew; +import org.wordcamp.android.objects.wordcampv2.SessionV2; +import org.wordcamp.android.objects.wordcampv2.Speaker; +import org.wordcamp.android.objects.wordcampv2.WordCamp; import org.wordcamp.android.wcdetails.MySessionsActivity; import org.wordcamp.android.wcdetails.SessionsFragment; import org.wordcamp.android.wcdetails.SpeakerFragment; @@ -48,7 +49,7 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); initListener(); wcdb = (WordCampDB) getIntent().getSerializableExtra("wc"); - wcid = wcdb.getWc_id(); + wcid = (int) wcdb.getWc_id(); setContentView(R.layout.activity_wordcamp_detail); communicator = new DBCommunicator(this); communicator.start(); @@ -79,7 +80,7 @@ private void initGUI() { } private void setToolbar() { - toolbar.setTitle(wcdb.getWc_title()); + toolbar.setTitle(Html.fromHtml(wcdb.getWc_title())); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); } @@ -236,7 +237,7 @@ public void onErrorResponse(VolleyError error) { @Override public void onResponseReceived(Object o) { - SpeakerNew[] speakerNews = (SpeakerNew[]) o; + Speaker[] speakerNews = (Speaker[]) o; for (int i = 0; i < speakerNews.length; i++) { try { @@ -288,8 +289,8 @@ public void onErrorResponse(VolleyError error) { scheduleResponseListener = new ResponseListener() { @Override public void onResponseReceived(Object o) { - Session[] sessions = (Session[]) o; - for (Session session : sessions) { + SessionV2[] sessions = (SessionV2[]) o; + for (SessionV2 session : sessions) { communicator.addSession(session, wcid); } Toast.makeText(getApplicationContext(), getString(R.string.update_sessions_toast), Toast.LENGTH_SHORT).show(); @@ -303,7 +304,7 @@ public void onResponseReceived(Object o) { wcResponseListener = new ResponseListener() { @Override public void onResponseReceived(Object o) { - WordCampNew wordCamp = (WordCampNew) o; + WordCamp wordCamp = (WordCamp) o; WordCampDB wordCampDB = new WordCampDB(wordCamp, ""); communicator.updateWC(wordCampDB); WordCampOverview overview = getOverViewFragment(); diff --git a/app/src/main/java/org/wordcamp/android/adapters/SessionsListAdapter.java b/app/src/main/java/org/wordcamp/android/adapters/SessionsListAdapter.java index 12dd876..4d86ec1 100644 --- a/app/src/main/java/org/wordcamp/android/adapters/SessionsListAdapter.java +++ b/app/src/main/java/org/wordcamp/android/adapters/SessionsListAdapter.java @@ -27,7 +27,6 @@ public class SessionsListAdapter extends BaseAdapter implements StickyListHeader private Context ctx; private LayoutInflater inflater; private OnAddToMySessionListener listener; - private int singleLineSize, doubleLineSize; public SessionsListAdapter(Context ctx, List dbList, HashMap speakersForSession, OnAddToMySessionListener listener) { this.ctx = ctx; @@ -35,8 +34,6 @@ public SessionsListAdapter(Context ctx, List dbList, HashMap 0) - addSessionFromSpeaker(sk.getSessions(), sk.getID(), wcid); + if (sk.getEmbedded().getSessions().size() > 0) + addSessionFromSpeaker(sk.getEmbedded().getSessions(), sk.getId(), wcid); return id; } - private void addSessionFromSpeaker(List sessions, int spid, int wcid) { + private void addSessionFromSpeaker(List sessions, long spid, int wcid) { for (int i = 0; i < sessions.size(); i++) { - Session ss = sessions.get(i); - - /*HashMap map = WordCampUtils.getTimeAndTypeSession(ss); - - ContentValues contentValues = new ContentValues(); - contentValues.put("wcid", wcid); - contentValues.put("title", ss.getTitle()); - - contentValues.put("time", map.get("_wcpt_session_time")); - - contentValues.put("postid", ss.getID()); - if (ss.getTerms()!=null && ss.getTerms().getWcbTrack().size() == 1) - contentValues.put("location", ss.getTerms().getWcbTrack().get(0).getName()); - - contentValues.put("category", map.get("_wcpt_session_type")); - contentValues.put("gsonobject", gson.toJson(ss)); - - long id = db.insertWithOnConflict("session", null, contentValues, SQLiteDatabase.CONFLICT_IGNORE); - - if (id == -1) { - contentValues.remove("wcid"); - contentValues.remove("postid"); - id = db.update("session", contentValues, " wcid = ? AND postid = ?", - new String[]{String.valueOf(wcid), String.valueOf(ss.getID())}); - }*/ - mapSessionToSingleSpeaker(wcid, ss.getID(), spid); + SessionV2 ss = sessions.get(i); + mapSessionToSingleSpeaker(wcid, ss.getId(), spid); } } - private void mapSessionToSingleSpeaker(int wcid, int sid, int spid) { + private void mapSessionToSingleSpeaker(int wcid, long sid, long spid) { ContentValues values = new ContentValues(); values.put("wcid", wcid); values.put("sessionid", sid); values.put("speakerid", spid); - long id = db.insertWithOnConflict("speakersessions", null, values, SQLiteDatabase.CONFLICT_REPLACE); + db.insertWithOnConflict("speakersessions", null, values, SQLiteDatabase.CONFLICT_REPLACE); } - public long addSession(org.wordcamp.android.objects.speaker.Session ss, int wcid) { + public long addSession(SessionV2 ss, int wcid) { ContentValues contentValues = new ContentValues(); contentValues.put("wcid", wcid); - contentValues.put("title", ss.getTitle()); - HashMap map = WordCampUtils.getTimeAndTypeSession(ss); + contentValues.put("title", ss.getTitle().getRendered()); //Currently we are adding the sessions which are not getting fetched by Speakers API - contentValues.put("time", map.get("_wcpt_session_time")); + contentValues.put("time", ss.getMeta().getWcptSessionTime()); - contentValues.put("postid", ss.getID()); - if (ss.getTerms() != null && ss.getTerms().getWcbTrack().size() == 1) - contentValues.put("location", ss.getTerms().getWcbTrack().get(0).getName()); + contentValues.put("postid", ss.getId()); + if (ss.getEmbedded().getWpTerm() != null && ss.getEmbedded().getWpTerm().size() > 0 + && ss.getEmbedded().getWpTerm().get(ss.getEmbedded().getWpTerm().size()-1).size() > 0) + contentValues.put("location", ss.getEmbedded().getWpTerm().get(ss.getEmbedded().getWpTerm().size()-1).get(0).getName()); - contentValues.put("category", map.get("_wcpt_session_type")); + contentValues.put("category", ss.getMeta().getWcptSessionType()); contentValues.put("gsonobject", gson.toJson(ss)); long id = db.insertWithOnConflict("session", null, contentValues, SQLiteDatabase.CONFLICT_IGNORE); @@ -215,7 +194,7 @@ public long addSession(org.wordcamp.android.objects.speaker.Session ss, int wcid contentValues.remove("wcid"); contentValues.remove("postid"); id = db.update("session", contentValues, " wcid = ? AND postid = ?", - new String[]{String.valueOf(wcid), String.valueOf(ss.getID())}); + new String[]{String.valueOf(wcid), String.valueOf(ss.getId())}); } return id; diff --git a/app/src/main/java/org/wordcamp/android/networking/WPAPIClient.java b/app/src/main/java/org/wordcamp/android/networking/WPAPIClient.java index 4f7e1c3..2959edb 100644 --- a/app/src/main/java/org/wordcamp/android/networking/WPAPIClient.java +++ b/app/src/main/java/org/wordcamp/android/networking/WPAPIClient.java @@ -6,22 +6,22 @@ import org.wordcamp.android.BuildConfig; import org.wordcamp.android.WordCampApplication; -import org.wordcamp.android.objects.speaker.Session; -import org.wordcamp.android.objects.speaker.SpeakerNew; -import org.wordcamp.android.objects.wordcamp.WordCampNew; +import org.wordcamp.android.objects.wordcampv2.SessionV2; +import org.wordcamp.android.objects.wordcampv2.Speaker; +import org.wordcamp.android.objects.wordcampv2.WordCamp; /** * Created by aagam on 14/1/15. */ public class WPAPIClient { - private static final String QUERY_PARAM_SPEAKERS = "wp-json/posts?type=wcb_speaker&filter[posts_per_page]=100"; + private static final String QUERY_PARAM_SPEAKERS_V2 = "wp-json/wp/v2/speakers?per_page=100&_embed=true&status=publish"; - private static final String QUERY_PARAM_WORDCAMP_LIST = "wp-json/posts?type=wordcamp&filter[order]=DESC&filter[posts_per_page]=50"; + private static final String QUERY_PARAM_WORDCAMP_LIST_V2 = "wp-json/wp/v2/wordcamps?per_page=100&status=wcpt-scheduled"; - private static final String QUERY_PARAM_SCHEDULE = "wp-json/posts?type=wcb_session&filter[order]=DESC&filter[orderby]=modified&filter[posts_per_page]=100"; + private static final String QUERY_PARAM_SCHEDULE_V2 = "wp-json/wp/v2/sessions?per_page=100&_embed=true&status=publish"; - private static final String QUERY_PARAM_SINGLEWC = "wp-json/posts/"; + private static final String QUERY_PARAM_SINGLEWC_V2 = "wp-json/wp/v2/wordcamps/"; private static String normalizeWordCampUrl(String wordcampURL) { if (!wordcampURL.endsWith("/")) { @@ -32,8 +32,8 @@ private static String normalizeWordCampUrl(String wordcampURL) { public static void getAllWCs(Context context, Response.ErrorListener errorListener, ResponseListener responseListener){ - WCRequest request = new WCRequest(BuildConfig.CENTRAL_WORDCAMP_URL + QUERY_PARAM_WORDCAMP_LIST, - WordCampNew[].class, errorListener, responseListener); + WCRequest request = new WCRequest(BuildConfig.CENTRAL_WORDCAMP_URL + QUERY_PARAM_WORDCAMP_LIST_V2, + WordCamp[].class, errorListener, responseListener); request.setTag(context); WordCampApplication.requestQueue.cancelAll(context); WordCampApplication.requestQueue.add(request); @@ -42,24 +42,24 @@ public static void getAllWCs(Context context, Response.ErrorListener errorListen public static void getWordCampSpeakersVolley(String wordcampURL, Context context, Response.ErrorListener errorListener, ResponseListener responseListener){ - WCRequest request = new WCRequest(normalizeWordCampUrl(wordcampURL) + QUERY_PARAM_SPEAKERS, - SpeakerNew[].class, errorListener, responseListener); + WCRequest request = new WCRequest(normalizeWordCampUrl(wordcampURL) + QUERY_PARAM_SPEAKERS_V2, + Speaker[].class, errorListener, responseListener); request.setTag(context); WordCampApplication.requestQueue.add(request); } public static void getWordCampScheduleVolley(String wordcampURL, Context context, Response.ErrorListener errorListener, ResponseListener responseListener){ - WCRequest request = new WCRequest(normalizeWordCampUrl(wordcampURL) + QUERY_PARAM_SCHEDULE, - Session[].class, errorListener, responseListener); + WCRequest request = new WCRequest(normalizeWordCampUrl(wordcampURL) + QUERY_PARAM_SCHEDULE_V2, + SessionV2[].class, errorListener, responseListener); request.setTag(context); WordCampApplication.requestQueue.add(request); } public static void getSingleWCVolley(int wcid, Context context, Response.ErrorListener errorListener, ResponseListener responseListener){ - WCRequest request = new WCRequest(BuildConfig.CENTRAL_WORDCAMP_URL + QUERY_PARAM_SINGLEWC + wcid, - WordCampNew.class, errorListener, responseListener); + WCRequest request = new WCRequest(BuildConfig.CENTRAL_WORDCAMP_URL + QUERY_PARAM_SINGLEWC_V2 + wcid, + WordCamp.class, errorListener, responseListener); request.setTag(context); WordCampApplication.requestQueue.add(request); } diff --git a/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java b/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java index 3d3917e..ec0bb3b 100644 --- a/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java +++ b/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java @@ -2,18 +2,16 @@ import com.google.gson.Gson; -import org.wordcamp.android.objects.wordcamp.WordCampNew; -import org.wordcamp.android.utils.WordCampUtils; +import org.wordcamp.android.objects.wordcampv2.WordCamp; import java.io.Serializable; -import java.util.HashMap; /** * Created by aagam on 28/1/15. */ public class WordCampDB implements Serializable { - private int wc_id; + private long wc_id; private String wc_title; private String wc_start_date; private String wc_end_date; @@ -49,22 +47,21 @@ public WordCampDB(int wc_id, String wc_title, String wc_start_date, String wc_en this.about = about; } - public WordCampDB(WordCampNew wcs, String lastscanned) { + public WordCampDB(WordCamp wcs, String lastscanned) { gson = new Gson(); - this.wc_id = wcs.getID(); - this.wc_title = wcs.getTitle(); + this.wc_id = wcs.getId(); + this.wc_title = wcs.getTitle().getRendered(); this.last_scanned_gmt = lastscanned; this.gson_object = gson.toJson(wcs); - HashMap urlAndTwitterAndDate = WordCampUtils.getTwitterAndUrl(wcs); - this.wc_start_date = urlAndTwitterAndDate.get("Start Date (YYYY-mm-dd)"); - this.wc_end_date = urlAndTwitterAndDate.get("End Date (YYYY-mm-dd)"); - this.url = urlAndTwitterAndDate.get("URL"); - this.twitter = urlAndTwitterAndDate.get("WordCamp Hashtag"); - this.address = urlAndTwitterAndDate.get("Physical Address"); - this.venue = urlAndTwitterAndDate.get("Venue Name"); - this.location = urlAndTwitterAndDate.get("Location"); - this.about = wcs.getContent(); + this.wc_start_date = wcs.getStartDateYYYYMmDd(); + this.wc_end_date = wcs.getEndDateYYYYMmDd(); + this.url = wcs.getURL(); + this.twitter = wcs.getTwitter(); + this.address = wcs.getPhysicalAddress(); + this.venue = wcs.getVenueName(); + this.location = wcs.getLocation(); + this.about = wcs.getContent().getRendered(); } public String getFeatureImageUrl() { @@ -83,11 +80,11 @@ public void setUrl(String url) { this.url = url; } - public int getWc_id() { + public long getWc_id() { return wc_id; } - public void setWc_id(int wc_id) { + public void setWc_id(long wc_id) { this.wc_id = wc_id; } diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Author.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Author.java deleted file mode 100644 index cb30bfd..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Author.java +++ /dev/null @@ -1,252 +0,0 @@ - -package org.wordcamp.android.objects.wordcamp; - -import com.google.gson.annotations.Expose; -import com.google.gson.annotations.SerializedName; - -public class Author { - - @Expose - private Integer ID; - @Expose - private String username; - @Expose - private String name; - @SerializedName("first_name") - @Expose - private String firstName; - @SerializedName("last_name") - @Expose - private String lastName; - @Expose - private String nickname; - @Expose - private String slug; - @Expose - private String URL; - @Expose - private String avatar; - @Expose - private String description; - @Expose - private String registered; - @Expose - private Meta meta; - - /** - * - * @return - * The ID - */ - public Integer getID() { - return ID; - } - - /** - * - * @param ID - * The ID - */ - public void setID(Integer ID) { - this.ID = ID; - } - - /** - * - * @return - * The username - */ - public String getUsername() { - return username; - } - - /** - * - * @param username - * The username - */ - public void setUsername(String username) { - this.username = username; - } - - /** - * - * @return - * The name - */ - public String getName() { - return name; - } - - /** - * - * @param name - * The name - */ - public void setName(String name) { - this.name = name; - } - - /** - * - * @return - * The firstName - */ - public String getFirstName() { - return firstName; - } - - /** - * - * @param firstName - * The first_name - */ - public void setFirstName(String firstName) { - this.firstName = firstName; - } - - /** - * - * @return - * The lastName - */ - public String getLastName() { - return lastName; - } - - /** - * - * @param lastName - * The last_name - */ - public void setLastName(String lastName) { - this.lastName = lastName; - } - - /** - * - * @return - * The nickname - */ - public String getNickname() { - return nickname; - } - - /** - * - * @param nickname - * The nickname - */ - public void setNickname(String nickname) { - this.nickname = nickname; - } - - /** - * - * @return - * The slug - */ - public String getSlug() { - return slug; - } - - /** - * - * @param slug - * The slug - */ - public void setSlug(String slug) { - this.slug = slug; - } - - /** - * - * @return - * The URL - */ - public String getURL() { - return URL; - } - - /** - * - * @param URL - * The URL - */ - public void setURL(String URL) { - this.URL = URL; - } - - /** - * - * @return - * The avatar - */ - public String getAvatar() { - return avatar; - } - - /** - * - * @param avatar - * The avatar - */ - public void setAvatar(String avatar) { - this.avatar = avatar; - } - - /** - * - * @return - * The description - */ - public String getDescription() { - return description; - } - - /** - * - * @param description - * The description - */ - public void setDescription(String description) { - this.description = description; - } - - /** - * - * @return - * The registered - */ - public String getRegistered() { - return registered; - } - - /** - * - * @param registered - * The registered - */ - public void setRegistered(String registered) { - this.registered = registered; - } - - /** - * - * @return - * The meta - */ - public Meta getMeta() { - return meta; - } - - /** - * - * @param meta - * The meta - */ - public void setMeta(Meta meta) { - this.meta = meta; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Links.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Links.java deleted file mode 100644 index 413c0b3..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Links.java +++ /dev/null @@ -1,49 +0,0 @@ - -package org.wordcamp.android.objects.wordcamp; - -import com.google.gson.annotations.Expose; - -public class Links { - - @Expose - private String self; - @Expose - private String archives; - - /** - * - * @return - * The self - */ - public String getSelf() { - return self; - } - - /** - * - * @param self - * The self - */ - public void setSelf(String self) { - this.self = self; - } - - /** - * - * @return - * The archives - */ - public String getArchives() { - return archives; - } - - /** - * - * @param archives - * The archives - */ - public void setArchives(String archives) { - this.archives = archives; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Links_.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Links_.java deleted file mode 100644 index 81202ab..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Links_.java +++ /dev/null @@ -1,111 +0,0 @@ - -package org.wordcamp.android.objects.wordcamp; - -import com.google.gson.annotations.Expose; -import com.google.gson.annotations.SerializedName; - -public class Links_ { - - @Expose - private String self; - @Expose - private String author; - @Expose - private String collection; - @Expose - private String replies; - @SerializedName("version-history") - @Expose - private String versionHistory; - - /** - * - * @return - * The self - */ - public String getSelf() { - return self; - } - - /** - * - * @param self - * The self - */ - public void setSelf(String self) { - this.self = self; - } - - /** - * - * @return - * The author - */ - public String getAuthor() { - return author; - } - - /** - * - * @param author - * The author - */ - public void setAuthor(String author) { - this.author = author; - } - - /** - * - * @return - * The collection - */ - public String getCollection() { - return collection; - } - - /** - * - * @param collection - * The collection - */ - public void setCollection(String collection) { - this.collection = collection; - } - - /** - * - * @return - * The replies - */ - public String getReplies() { - return replies; - } - - /** - * - * @param replies - * The replies - */ - public void setReplies(String replies) { - this.replies = replies; - } - - /** - * - * @return - * The versionHistory - */ - public String getVersionHistory() { - return versionHistory; - } - - /** - * - * @param versionHistory - * The version-history - */ - public void setVersionHistory(String versionHistory) { - this.versionHistory = versionHistory; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta.java deleted file mode 100644 index 72cad23..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta.java +++ /dev/null @@ -1,30 +0,0 @@ - -package org.wordcamp.android.objects.wordcamp; - -import com.google.gson.annotations.Expose; - - -public class Meta { - - @Expose - private Links links; - - /** - * - * @return - * The links - */ - public Links getLinks() { - return links; - } - - /** - * - * @param links - * The links - */ - public void setLinks(Links links) { - this.links = links; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta_.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta_.java deleted file mode 100644 index 9671588..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta_.java +++ /dev/null @@ -1,30 +0,0 @@ - -package org.wordcamp.android.objects.wordcamp; - -import com.google.gson.annotations.Expose; - - -public class Meta_ { - - @Expose - private Links_ links; - - /** - * - * @return - * The links - */ - public Links_ getLinks() { - return links; - } - - /** - * - * @param links - * The links - */ - public void setLinks(Links_ links) { - this.links = links; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcamp/PostMetum.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/PostMetum.java deleted file mode 100644 index 1190e80..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/wordcamp/PostMetum.java +++ /dev/null @@ -1,70 +0,0 @@ - -package org.wordcamp.android.objects.wordcamp; - -import com.google.gson.annotations.Expose; - - -public class PostMetum { - - @Expose - private Integer ID; - @Expose - private String key; - @Expose - private String value; - - /** - * - * @return - * The ID - */ - public Integer getID() { - return ID; - } - - /** - * - * @param ID - * The ID - */ - public void setID(Integer ID) { - this.ID = ID; - } - - /** - * - * @return - * The key - */ - public String getKey() { - return key; - } - - /** - * - * @param key - * The key - */ - public void setKey(String key) { - this.key = key; - } - - /** - * - * @return - * The value - */ - public String getValue() { - return value; - } - - /** - * - * @param value - * The value - */ - public void setValue(String value) { - this.value = value; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcamp/WordCampNew.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/WordCampNew.java deleted file mode 100644 index b368a4a..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/wordcamp/WordCampNew.java +++ /dev/null @@ -1,521 +0,0 @@ - -package org.wordcamp.android.objects.wordcamp; - -import com.google.gson.annotations.Expose; -import com.google.gson.annotations.SerializedName; - -import java.util.ArrayList; -import java.util.List; - -public class WordCampNew { - - @Expose - private Integer ID; - @Expose - private String title; - @Expose - private String status; - @Expose - private String type; - @Expose - private Author author; - @Expose - private String content; - @Expose - private Object parent; - @Expose - private String link; - @Expose - private String date; - @Expose - private String modified; - @Expose - private String format; - @Expose - private String slug; - @Expose - private String guid; - @Expose - private String excerpt; - @SerializedName("menu_order") - @Expose - private Integer menuOrder; - @SerializedName("comment_status") - @Expose - private String commentStatus; - @SerializedName("ping_status") - @Expose - private String pingStatus; - @Expose - private Boolean sticky; - @SerializedName("date_tz") - @Expose - private String dateTz; - @SerializedName("date_gmt") - @Expose - private String dateGmt; - @SerializedName("modified_tz") - @Expose - private String modifiedTz; - @SerializedName("modified_gmt") - @Expose - private String modifiedGmt; - @Expose - private Meta_ meta; - @Expose - private List terms = new ArrayList(); - @SerializedName("post_meta") - @Expose - private List postMeta = new ArrayList(); - - /** - * - * @return - * The ID - */ - public Integer getID() { - return ID; - } - - /** - * - * @param ID - * The ID - */ - public void setID(Integer ID) { - this.ID = ID; - } - - /** - * - * @return - * The title - */ - public String getTitle() { - return title; - } - - /** - * - * @param title - * The title - */ - public void setTitle(String title) { - this.title = title; - } - - /** - * - * @return - * The status - */ - public String getStatus() { - return status; - } - - /** - * - * @param status - * The status - */ - public void setStatus(String status) { - this.status = status; - } - - /** - * - * @return - * The type - */ - public String getType() { - return type; - } - - /** - * - * @param type - * The type - */ - public void setType(String type) { - this.type = type; - } - - /** - * - * @return - * The author - */ - public Author getAuthor() { - return author; - } - - /** - * - * @param author - * The author - */ - public void setAuthor(Author author) { - this.author = author; - } - - /** - * - * @return - * The content - */ - public String getContent() { - return content; - } - - /** - * - * @param content - * The content - */ - public void setContent(String content) { - this.content = content; - } - - /** - * - * @return - * The parent - */ - public Object getParent() { - return parent; - } - - /** - * - * @param parent - * The parent - */ - public void setParent(Object parent) { - this.parent = parent; - } - - /** - * - * @return - * The link - */ - public String getLink() { - return link; - } - - /** - * - * @param link - * The link - */ - public void setLink(String link) { - this.link = link; - } - - /** - * - * @return - * The date - */ - public String getDate() { - return date; - } - - /** - * - * @param date - * The date - */ - public void setDate(String date) { - this.date = date; - } - - /** - * - * @return - * The modified - */ - public String getModified() { - return modified; - } - - /** - * - * @param modified - * The modified - */ - public void setModified(String modified) { - this.modified = modified; - } - - /** - * - * @return - * The format - */ - public String getFormat() { - return format; - } - - /** - * - * @param format - * The format - */ - public void setFormat(String format) { - this.format = format; - } - - /** - * - * @return - * The slug - */ - public String getSlug() { - return slug; - } - - /** - * - * @param slug - * The slug - */ - public void setSlug(String slug) { - this.slug = slug; - } - - /** - * - * @return - * The guid - */ - public String getGuid() { - return guid; - } - - /** - * - * @param guid - * The guid - */ - public void setGuid(String guid) { - this.guid = guid; - } - - /** - * - * @return - * The excerpt - */ - public String getExcerpt() { - return excerpt; - } - - /** - * - * @param excerpt - * The excerpt - */ - public void setExcerpt(String excerpt) { - this.excerpt = excerpt; - } - - /** - * - * @return - * The menuOrder - */ - public Integer getMenuOrder() { - return menuOrder; - } - - /** - * - * @param menuOrder - * The menu_order - */ - public void setMenuOrder(Integer menuOrder) { - this.menuOrder = menuOrder; - } - - /** - * - * @return - * The commentStatus - */ - public String getCommentStatus() { - return commentStatus; - } - - /** - * - * @param commentStatus - * The comment_status - */ - public void setCommentStatus(String commentStatus) { - this.commentStatus = commentStatus; - } - - /** - * - * @return - * The pingStatus - */ - public String getPingStatus() { - return pingStatus; - } - - /** - * - * @param pingStatus - * The ping_status - */ - public void setPingStatus(String pingStatus) { - this.pingStatus = pingStatus; - } - - /** - * - * @return - * The sticky - */ - public Boolean getSticky() { - return sticky; - } - - /** - * - * @param sticky - * The sticky - */ - public void setSticky(Boolean sticky) { - this.sticky = sticky; - } - - /** - * - * @return - * The dateTz - */ - public String getDateTz() { - return dateTz; - } - - /** - * - * @param dateTz - * The date_tz - */ - public void setDateTz(String dateTz) { - this.dateTz = dateTz; - } - - /** - * - * @return - * The dateGmt - */ - public String getDateGmt() { - return dateGmt; - } - - /** - * - * @param dateGmt - * The date_gmt - */ - public void setDateGmt(String dateGmt) { - this.dateGmt = dateGmt; - } - - /** - * - * @return - * The modifiedTz - */ - public String getModifiedTz() { - return modifiedTz; - } - - /** - * - * @param modifiedTz - * The modified_tz - */ - public void setModifiedTz(String modifiedTz) { - this.modifiedTz = modifiedTz; - } - - /** - * - * @return - * The modifiedGmt - */ - public String getModifiedGmt() { - return modifiedGmt; - } - - /** - * - * @param modifiedGmt - * The modified_gmt - */ - public void setModifiedGmt(String modifiedGmt) { - this.modifiedGmt = modifiedGmt; - } - - /** - * - * @return - * The meta - */ - public Meta_ getMeta() { - return meta; - } - - /** - * - * @param meta - * The meta - */ - public void setMeta(Meta_ meta) { - this.meta = meta; - } - - /** - * - * @return - * The terms - */ - public List getTerms() { - return terms; - } - - /** - * - * @param terms - * The terms - */ - public void setTerms(List terms) { - this.terms = terms; - } - - /** - * - * @return - * The postMeta - */ - public List getPostMeta() { - return postMeta; - } - - /** - * - * @param postMeta - * The post_meta - */ - public void setPostMeta(List postMeta) { - this.postMeta = postMeta; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/AvatarUrls.java b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/AvatarUrls.java new file mode 100644 index 0000000..86cab95 --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/AvatarUrls.java @@ -0,0 +1,43 @@ + +package org.wordcamp.android.objects.wordcampv2; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class AvatarUrls { + + @SerializedName("24") + @Expose + private String _24; + @SerializedName("48") + @Expose + private String _48; + @SerializedName("96") + @Expose + private String _96; + + public String get24() { + return _24; + } + + public void set24(String _24) { + this._24 = _24; + } + + public String get48() { + return _48; + } + + public void set48(String _48) { + this._48 = _48; + } + + public String get96() { + return _96; + } + + public void set96(String _96) { + this._96 = _96; + } + +} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Content.java b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Content.java new file mode 100644 index 0000000..3c11637 --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Content.java @@ -0,0 +1,21 @@ + +package org.wordcamp.android.objects.wordcampv2; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class Content { + + @SerializedName("rendered") + @Expose + private String rendered; + + public String getRendered() { + return rendered; + } + + public void setRendered(String rendered) { + this.rendered = rendered; + } + +} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Embedded.java b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Embedded.java new file mode 100644 index 0000000..137fa43 --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Embedded.java @@ -0,0 +1,33 @@ + +package org.wordcamp.android.objects.wordcampv2; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +import java.util.List; + +public class Embedded { + @SerializedName("wp:term") + @Expose + private List> wpTerm = null; + + @SerializedName("sessions") + @Expose + private List sessions = null; + + public List> getWpTerm() { + return wpTerm; + } + + public void setWpTerm(List> wpTerm) { + this.wpTerm = wpTerm; + } + + public List getSessions() { + return sessions; + } + + public void setSessions(List sessions) { + this.sessions = sessions; + } +} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Meta.java b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Meta.java new file mode 100644 index 0000000..4bd3a97 --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Meta.java @@ -0,0 +1,54 @@ + +package org.wordcamp.android.objects.wordcampv2; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class Meta { + + @SerializedName("_wcpt_session_time") + @Expose + private long wcptSessionTime; + @SerializedName("_wcpt_session_type") + @Expose + private String wcptSessionType; + @SerializedName("_wcpt_session_slides") + @Expose + private String wcptSessionSlides; + @SerializedName("_wcpt_session_video") + @Expose + private String wcptSessionVideo; + + public long getWcptSessionTime() { + return wcptSessionTime; + } + + public void setWcptSessionTime(long wcptSessionTime) { + this.wcptSessionTime = wcptSessionTime; + } + + public String getWcptSessionType() { + return wcptSessionType; + } + + public void setWcptSessionType(String wcptSessionType) { + this.wcptSessionType = wcptSessionType; + } + + public String getWcptSessionSlides() { + return wcptSessionSlides; + } + + public void setWcptSessionSlides(String wcptSessionSlides) { + this.wcptSessionSlides = wcptSessionSlides; + } + + public String getWcptSessionVideo() { + return wcptSessionVideo; + } + + public void setWcptSessionVideo(String wcptSessionVideo) { + this.wcptSessionVideo = wcptSessionVideo; + } + +} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/SessionV2.java b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/SessionV2.java new file mode 100644 index 0000000..7b8c475 --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/SessionV2.java @@ -0,0 +1,199 @@ + +package org.wordcamp.android.objects.wordcampv2; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +import java.util.List; + +public class SessionV2 { + + @SerializedName("id") + @Expose + private long id; + @SerializedName("date") + @Expose + private String date; + @SerializedName("date_gmt") + @Expose + private String dateGmt; + @SerializedName("modified") + @Expose + private String modified; + @SerializedName("modified_gmt") + @Expose + private String modifiedGmt; + @SerializedName("slug") + @Expose + private String slug; + @SerializedName("status") + @Expose + private String status; + @SerializedName("type") + @Expose + private String type; + @SerializedName("link") + @Expose + private String link; + @SerializedName("title") + @Expose + private Title title; + @SerializedName("content") + @Expose + private Content content; + @SerializedName("author") + @Expose + private long author; + @SerializedName("featured_media") + @Expose + private long featuredMedia; + @SerializedName("template") + @Expose + private String template; + @SerializedName("meta") + @Expose + private Meta meta; + @SerializedName("session_track") + @Expose + private List sessionTrack = null; + @SerializedName("_embedded") + @Expose + private Embedded embedded; + + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public String getDate() { + return date; + } + + public void setDate(String date) { + this.date = date; + } + + public String getDateGmt() { + return dateGmt; + } + + public void setDateGmt(String dateGmt) { + this.dateGmt = dateGmt; + } + + public String getModified() { + return modified; + } + + public void setModified(String modified) { + this.modified = modified; + } + + public String getModifiedGmt() { + return modifiedGmt; + } + + public void setModifiedGmt(String modifiedGmt) { + this.modifiedGmt = modifiedGmt; + } + + public String getSlug() { + return slug; + } + + public void setSlug(String slug) { + this.slug = slug; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getLink() { + return link; + } + + public void setLink(String link) { + this.link = link; + } + + public Title getTitle() { + return title; + } + + public void setTitle(Title title) { + this.title = title; + } + + public Content getContent() { + return content; + } + + public void setContent(Content content) { + this.content = content; + } + + public long getAuthor() { + return author; + } + + public void setAuthor(long author) { + this.author = author; + } + + public long getFeaturedMedia() { + return featuredMedia; + } + + public void setFeaturedMedia(long featuredMedia) { + this.featuredMedia = featuredMedia; + } + + public String getTemplate() { + return template; + } + + public void setTemplate(String template) { + this.template = template; + } + + public Meta getMeta() { + return meta; + } + + public void setMeta(Meta meta) { + this.meta = meta; + } + + public List getSessionTrack() { + return sessionTrack; + } + + public void setSessionTrack(List sessionTrack) { + this.sessionTrack = sessionTrack; + } + + public Embedded getEmbedded() { + return embedded; + } + + public void setEmbedded(Embedded embedded) { + this.embedded = embedded; + } +} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Speaker.java b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Speaker.java new file mode 100644 index 0000000..3a5890d --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Speaker.java @@ -0,0 +1,221 @@ + +package org.wordcamp.android.objects.wordcampv2; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +import java.util.List; + +public class Speaker { + + @SerializedName("id") + @Expose + private long id; + @SerializedName("date") + @Expose + private String date; + @SerializedName("date_gmt") + @Expose + private String dateGmt; + @SerializedName("modified") + @Expose + private String modified; + @SerializedName("modified_gmt") + @Expose + private String modifiedGmt; + @SerializedName("slug") + @Expose + private String slug; + @SerializedName("status") + @Expose + private String status; + @SerializedName("type") + @Expose + private String type; + @SerializedName("link") + @Expose + private String link; + @SerializedName("title") + @Expose + private Title title; + @SerializedName("content") + @Expose + private Content content; + @SerializedName("author") + @Expose + private long author; + @SerializedName("comment_status") + @Expose + private String commentStatus; + @SerializedName("ping_status") + @Expose + private String pingStatus; + @SerializedName("template") + @Expose + private String template; + @SerializedName("meta") + @Expose + private List meta = null; + @SerializedName("speaker_group") + @Expose + private List speakerGroup = null; + @SerializedName("avatar_urls") + @Expose + private AvatarUrls avatarUrls; + @SerializedName("_embedded") + @Expose + private Embedded embedded; + + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public String getDate() { + return date; + } + + public void setDate(String date) { + this.date = date; + } + + public String getDateGmt() { + return dateGmt; + } + + public void setDateGmt(String dateGmt) { + this.dateGmt = dateGmt; + } + + public String getModified() { + return modified; + } + + public void setModified(String modified) { + this.modified = modified; + } + + public String getModifiedGmt() { + return modifiedGmt; + } + + public void setModifiedGmt(String modifiedGmt) { + this.modifiedGmt = modifiedGmt; + } + + public String getSlug() { + return slug; + } + + public void setSlug(String slug) { + this.slug = slug; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getLink() { + return link; + } + + public void setLink(String link) { + this.link = link; + } + + public Title getTitle() { + return title; + } + + public void setTitle(Title title) { + this.title = title; + } + + public Content getContent() { + return content; + } + + public void setContent(Content content) { + this.content = content; + } + + public long getAuthor() { + return author; + } + + public void setAuthor(long author) { + this.author = author; + } + + public String getCommentStatus() { + return commentStatus; + } + + public void setCommentStatus(String commentStatus) { + this.commentStatus = commentStatus; + } + + public String getPingStatus() { + return pingStatus; + } + + public void setPingStatus(String pingStatus) { + this.pingStatus = pingStatus; + } + + public String getTemplate() { + return template; + } + + public void setTemplate(String template) { + this.template = template; + } + + public List getMeta() { + return meta; + } + + public void setMeta(List meta) { + this.meta = meta; + } + + public List getSpeakerGroup() { + return speakerGroup; + } + + public void setSpeakerGroup(List speakerGroup) { + this.speakerGroup = speakerGroup; + } + + public AvatarUrls getAvatarUrls() { + return avatarUrls; + } + + public void setAvatarUrls(AvatarUrls avatarUrls) { + this.avatarUrls = avatarUrls; + } + + public Embedded getEmbedded() { + return embedded; + } + + public void setEmbedded(Embedded embedded) { + this.embedded = embedded; + } +} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Title.java b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Title.java new file mode 100644 index 0000000..062270b --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Title.java @@ -0,0 +1,21 @@ + +package org.wordcamp.android.objects.wordcampv2; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class Title { + + @SerializedName("rendered") + @Expose + private String rendered; + + public String getRendered() { + return rendered; + } + + public void setRendered(String rendered) { + this.rendered = rendered; + } + +} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WordCamp.java b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WordCamp.java new file mode 100644 index 0000000..558fce2 --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WordCamp.java @@ -0,0 +1,394 @@ + +package org.wordcamp.android.objects.wordcampv2; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class WordCamp { + + @SerializedName("id") + @Expose + private long id; + @SerializedName("date") + @Expose + private String date; + @SerializedName("date_gmt") + @Expose + private String dateGmt; + @SerializedName("modified") + @Expose + private String modified; + @SerializedName("modified_gmt") + @Expose + private String modifiedGmt; + @SerializedName("slug") + @Expose + private String slug; + @SerializedName("status") + @Expose + private String status; + @SerializedName("type") + @Expose + private String type; + @SerializedName("link") + @Expose + private String link; + @SerializedName("title") + @Expose + private Title title; + @SerializedName("content") + @Expose + private Content content; + @SerializedName("author") + @Expose + private long author; + @SerializedName("featured_media") + @Expose + private long featuredMedia; + @SerializedName("template") + @Expose + private String template; + @SerializedName("Start Date (YYYY-mm-dd)") + @Expose + private String startDateYYYYMmDd; + @SerializedName("End Date (YYYY-mm-dd)") + @Expose + private String endDateYYYYMmDd; + @SerializedName("Location") + @Expose + private String location; + @SerializedName("URL") + @Expose + private String uRL; + @SerializedName("Twitter") + @Expose + private String twitter; + @SerializedName("WordCamp Hashtag") + @Expose + private String wordCampHashtag; + @SerializedName("Number of Anticipated Attendees") + @Expose + private String numberOfAnticipatedAttendees; + @SerializedName("Organizer Name") + @Expose + private String organizerName; + @SerializedName("WordPress.org Username") + @Expose + private String wordPressOrgUsername; + @SerializedName("Venue Name") + @Expose + private String venueName; + @SerializedName("Physical Address") + @Expose + private String physicalAddress; + @SerializedName("Maximum Capacity") + @Expose + private String maximumCapacity; + @SerializedName("Available Rooms") + @Expose + private String availableRooms; + @SerializedName("Website URL") + @Expose + private String websiteURL; + @SerializedName("Exhibition Space Available") + @Expose + private String exhibitionSpaceAvailable; + @SerializedName("_venue_coordinates") + @Expose + private Object venueCoordinates; + @SerializedName("_venue_city") + @Expose + private String venueCity; + @SerializedName("_venue_state") + @Expose + private String venueState; + @SerializedName("_venue_country_code") + @Expose + private String venueCountryCode; + @SerializedName("_venue_country_name") + @Expose + private String venueCountryName; + @SerializedName("_venue_zip") + @Expose + private String venueZip; + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public String getDate() { + return date; + } + + public void setDate(String date) { + this.date = date; + } + + public String getDateGmt() { + return dateGmt; + } + + public void setDateGmt(String dateGmt) { + this.dateGmt = dateGmt; + } + + public String getModified() { + return modified; + } + + public void setModified(String modified) { + this.modified = modified; + } + + public String getModifiedGmt() { + return modifiedGmt; + } + + public void setModifiedGmt(String modifiedGmt) { + this.modifiedGmt = modifiedGmt; + } + + public String getSlug() { + return slug; + } + + public void setSlug(String slug) { + this.slug = slug; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getLink() { + return link; + } + + public void setLink(String link) { + this.link = link; + } + + public Title getTitle() { + return title; + } + + public void setTitle(Title title) { + this.title = title; + } + + public Content getContent() { + return content; + } + + public void setContent(Content content) { + this.content = content; + } + + public long getAuthor() { + return author; + } + + public void setAuthor(long author) { + this.author = author; + } + + public long getFeaturedMedia() { + return featuredMedia; + } + + public void setFeaturedMedia(long featuredMedia) { + this.featuredMedia = featuredMedia; + } + + public String getTemplate() { + return template; + } + + public void setTemplate(String template) { + this.template = template; + } + + public String getStartDateYYYYMmDd() { + return startDateYYYYMmDd; + } + + public void setStartDateYYYYMmDd(String startDateYYYYMmDd) { + this.startDateYYYYMmDd = startDateYYYYMmDd; + } + + public String getEndDateYYYYMmDd() { + return endDateYYYYMmDd; + } + + public void setEndDateYYYYMmDd(String endDateYYYYMmDd) { + this.endDateYYYYMmDd = endDateYYYYMmDd; + } + + public String getLocation() { + return location; + } + + public void setLocation(String location) { + this.location = location; + } + + public String getURL() { + return uRL; + } + + public void setURL(String uRL) { + this.uRL = uRL; + } + + public String getTwitter() { + return twitter; + } + + public void setTwitter(String twitter) { + this.twitter = twitter; + } + + public String getWordCampHashtag() { + return wordCampHashtag; + } + + public void setWordCampHashtag(String wordCampHashtag) { + this.wordCampHashtag = wordCampHashtag; + } + + public String getNumberOfAnticipatedAttendees() { + return numberOfAnticipatedAttendees; + } + + public void setNumberOfAnticipatedAttendees(String numberOfAnticipatedAttendees) { + this.numberOfAnticipatedAttendees = numberOfAnticipatedAttendees; + } + + public String getOrganizerName() { + return organizerName; + } + + public void setOrganizerName(String organizerName) { + this.organizerName = organizerName; + } + + public String getWordPressOrgUsername() { + return wordPressOrgUsername; + } + + public void setWordPressOrgUsername(String wordPressOrgUsername) { + this.wordPressOrgUsername = wordPressOrgUsername; + } + + public String getVenueName() { + return venueName; + } + + public void setVenueName(String venueName) { + this.venueName = venueName; + } + + public String getPhysicalAddress() { + return physicalAddress; + } + + public void setPhysicalAddress(String physicalAddress) { + this.physicalAddress = physicalAddress; + } + + public String getMaximumCapacity() { + return maximumCapacity; + } + + public void setMaximumCapacity(String maximumCapacity) { + this.maximumCapacity = maximumCapacity; + } + + public String getAvailableRooms() { + return availableRooms; + } + + public void setAvailableRooms(String availableRooms) { + this.availableRooms = availableRooms; + } + + public String getWebsiteURL() { + return websiteURL; + } + + public void setWebsiteURL(String websiteURL) { + this.websiteURL = websiteURL; + } + + public String getExhibitionSpaceAvailable() { + return exhibitionSpaceAvailable; + } + + public void setExhibitionSpaceAvailable(String exhibitionSpaceAvailable) { + this.exhibitionSpaceAvailable = exhibitionSpaceAvailable; + } + + public Object getVenueCoordinates() { + return venueCoordinates; + } + + public void setVenueCoordinates(Object venueCoordinates) { + this.venueCoordinates = venueCoordinates; + } + + public String getVenueCity() { + return venueCity; + } + + public void setVenueCity(String venueCity) { + this.venueCity = venueCity; + } + + public String getVenueState() { + return venueState; + } + + public void setVenueState(String venueState) { + this.venueState = venueState; + } + + public String getVenueCountryCode() { + return venueCountryCode; + } + + public void setVenueCountryCode(String venueCountryCode) { + this.venueCountryCode = venueCountryCode; + } + + public String getVenueCountryName() { + return venueCountryName; + } + + public void setVenueCountryName(String venueCountryName) { + this.venueCountryName = venueCountryName; + } + + public String getVenueZip() { + return venueZip; + } + + public void setVenueZip(String venueZip) { + this.venueZip = venueZip; + } +} diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WpTerm.java b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WpTerm.java new file mode 100644 index 0000000..06891d1 --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WpTerm.java @@ -0,0 +1,65 @@ + +package org.wordcamp.android.objects.wordcampv2; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +public class WpTerm { + + @SerializedName("id") + @Expose + private long id; + @SerializedName("link") + @Expose + private String link; + @SerializedName("name") + @Expose + private String name; + @SerializedName("slug") + @Expose + private String slug; + @SerializedName("taxonomy") + @Expose + private String taxonomy; + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public String getLink() { + return link; + } + + public void setLink(String link) { + this.link = link; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getSlug() { + return slug; + } + + public void setSlug(String slug) { + this.slug = slug; + } + + public String getTaxonomy() { + return taxonomy; + } + + public void setTaxonomy(String taxonomy) { + this.taxonomy = taxonomy; + } + +} diff --git a/app/src/main/java/org/wordcamp/android/utils/WCConstants.java b/app/src/main/java/org/wordcamp/android/utils/WCConstants.java new file mode 100644 index 0000000..1db149e --- /dev/null +++ b/app/src/main/java/org/wordcamp/android/utils/WCConstants.java @@ -0,0 +1,10 @@ +package org.wordcamp.android.utils; + +/** + * Created by shah.aagam on 08/07/17. + */ + +public class WCConstants { + public static final String GRAVATAR_DEFAULT_SIZE = "120"; + public static final String GRAVATAR_HIGH_RES_SIZE = "500"; +} diff --git a/app/src/main/java/org/wordcamp/android/utils/WordCampUtils.java b/app/src/main/java/org/wordcamp/android/utils/WordCampUtils.java index 33959bd..f297b1f 100644 --- a/app/src/main/java/org/wordcamp/android/utils/WordCampUtils.java +++ b/app/src/main/java/org/wordcamp/android/utils/WordCampUtils.java @@ -1,18 +1,17 @@ package org.wordcamp.android.utils; import org.wordcamp.android.objects.WordCampDB; -import org.wordcamp.android.objects.speaker.Session; -import org.wordcamp.android.objects.wordcamp.PostMetum; -import org.wordcamp.android.objects.wordcamp.WordCampNew; import java.text.DateFormat; import java.util.Calendar; import java.util.Date; -import java.util.HashMap; import java.util.List; import java.util.Locale; import java.util.TimeZone; +import static org.wordcamp.android.utils.WCConstants.GRAVATAR_DEFAULT_SIZE; +import static org.wordcamp.android.utils.WCConstants.GRAVATAR_HIGH_RES_SIZE; + /** * Created by aagam on 29/1/15. */ @@ -95,31 +94,7 @@ public static int formatProperTimeHash(int time) { return d.hashCode(); } - public static HashMap getTwitterAndUrl(WordCampNew wcn) { - List meta = wcn.getPostMeta(); - - HashMap map = new HashMap<>(); - for (int i = 0; i < meta.size(); i++) { - PostMetum metum = meta.get(i); - map.put(metum.getKey(), metum.getValue()); - } - - return map; - } - - public static HashMap getTimeAndTypeSession(Session ss) { - List meta = ss.getPostMeta(); - - HashMap map = new HashMap<>(); - for (int i = 0; i < meta.size(); i++) { - org.wordcamp.android.objects.speaker.PostMetum metum = meta.get(i); - map.put(metum.getKey(), metum.getValue()); - } - - return map; - } - public static String getHighResGravatar(String gravatar){ - return gravatar.substring(0, gravatar.length() - 6) + "?s=500"; + return gravatar.replace("s=" + GRAVATAR_DEFAULT_SIZE, "s=" + GRAVATAR_HIGH_RES_SIZE); } } diff --git a/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java b/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java index aedba95..548c862 100644 --- a/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java +++ b/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java @@ -23,7 +23,7 @@ import org.wordcamp.android.objects.MiniSpeaker; import org.wordcamp.android.objects.SessionDB; import org.wordcamp.android.objects.SpeakerDB; -import org.wordcamp.android.objects.speaker.Session; +import org.wordcamp.android.objects.wordcampv2.SessionV2; import org.wordcamp.android.utils.WordCampUtils; import java.util.ArrayList; @@ -35,7 +35,7 @@ public class SessionDetailsActivity extends AppCompatActivity { private SessionDB sessionDB; - private org.wordcamp.android.objects.speaker.Session session; + private SessionV2 session; private ArrayList speakerList; private DBCommunicator communicator; private FavoriteSession fav; @@ -53,7 +53,7 @@ protected void onCreate(Bundle savedInstanceState) { private void initGUI() { Gson gson = new Gson(); - session = gson.fromJson(sessionDB.getGson_object(), Session.class); + session = gson.fromJson(sessionDB.getGson_object(), SessionV2.class); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); toolbar.setTitle(""); setSupportActionBar(toolbar); @@ -65,12 +65,12 @@ private void initGUI() { TextView title = (TextView) findViewById(R.id.wc_detail_title); TextView subtitle = (TextView) findViewById(R.id.wc_detail_date); TextView info = (TextView) headerView.findViewById(R.id.wc_detail_abstract); - title.setText(Html.fromHtml(session.getTitle())); - info.setText(Html.fromHtml(session.getContent())); - if (session.getTerms() != null && session.getTerms().getWcbTrack().size() == 1) { + title.setText(Html.fromHtml(session.getTitle().getRendered())); + info.setText(Html.fromHtml(session.getContent().getRendered())); + if (session.getEmbedded().getWpTerm() != null && !session.getEmbedded().getWpTerm().isEmpty()) { String date = WordCampUtils.getFormattedDate(sessionDB.getTime()); String time = WordCampUtils.getFormattedTime(sessionDB.getTime()); - String track = session.getTerms().getWcbTrack().get(0).getName(); + String track = sessionDB.getLocation(); String sep = getString(R.string.separator); subtitle.setText(date + sep + time + sep + Html.fromHtml(track)); } else { diff --git a/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java b/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java index b949090..0428ce1 100644 --- a/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java +++ b/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java @@ -33,7 +33,7 @@ import org.wordcamp.android.db.DBCommunicator; import org.wordcamp.android.objects.SessionDB; import org.wordcamp.android.objects.SpeakerDB; -import org.wordcamp.android.objects.speaker.SpeakerNew; +import org.wordcamp.android.objects.wordcampv2.Speaker; import org.wordcamp.android.utils.Utils; import org.wordcamp.android.utils.WordCampUtils; @@ -50,7 +50,7 @@ public class SpeakerDetailsActivity extends AppCompatActivity { private Toolbar toolbar; private SpeakerDB speakerDB; - private SpeakerNew speaker; + private Speaker speaker; private Gson gson; private DBCommunicator communicator; private HashMap titleSession; @@ -80,7 +80,7 @@ protected void onCreate(Bundle savedInstanceState) { gson = new Gson(); communicator = new DBCommunicator(this); communicator.start(); - speaker = gson.fromJson(speakerDB.getGson_object(), SpeakerNew.class); + speaker = gson.fromJson(speakerDB.getGson_object(), Speaker.class); titleSession = communicator.getSpeakerSession(speakerDB.getWc_id(), speakerDB.getSpeaker_id()); From ef8b1008dcb39263abe451a38ce706201dbb524e Mon Sep 17 00:00:00 2001 From: Aagam Shah Date: Tue, 18 Jul 2017 00:26:11 +0530 Subject: [PATCH 2/7] Reuse title formatting logic --- .../java/org/wordcamp/android/WordCampDetailActivity.java | 3 +-- .../java/org/wordcamp/android/adapters/WCListAdapter.java | 3 +-- .../main/java/org/wordcamp/android/objects/WordCampDB.java | 7 +++++++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java b/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java index 22540af..6da65bd 100644 --- a/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java +++ b/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java @@ -8,7 +8,6 @@ import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; -import android.text.Html; import android.view.Menu; import android.view.MenuItem; import android.widget.Toast; @@ -80,7 +79,7 @@ private void initGUI() { } private void setToolbar() { - toolbar.setTitle(Html.fromHtml(wcdb.getWc_title())); + toolbar.setTitle(wcdb.getFormattedWCTitle()); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); } diff --git a/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java b/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java index 4aed586..9fa879c 100644 --- a/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java +++ b/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java @@ -2,7 +2,6 @@ import android.content.Context; import android.support.v7.widget.RecyclerView; -import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -58,7 +57,7 @@ public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { public void onBindViewHolder(final ViewHolder holder, final int position) { final WordCampDB wc = filteredWordCamps.get(position); - holder.title.setText(Html.fromHtml(wc.getWc_title())); + holder.title.setText(wc.getFormattedWCTitle()); holder.date.setText(WordCampUtils.getProperDate(wc)); if (wc.isMyWC) { Picasso.with(ctx).load(R.drawable.ic_favorite_solid_24dp).into(holder.bookmark); diff --git a/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java b/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java index ec0bb3b..13c9162 100644 --- a/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java +++ b/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java @@ -1,5 +1,8 @@ package org.wordcamp.android.objects; +import android.text.Html; +import android.text.Spanned; + import com.google.gson.Gson; import org.wordcamp.android.objects.wordcampv2.WordCamp; @@ -92,6 +95,10 @@ public String getWc_title() { return wc_title; } + public Spanned getFormattedWCTitle() { + return Html.fromHtml(wc_title); + } + public void setWc_title(String wc_title) { this.wc_title = wc_title; } From b48d9c4732065039ee7e8ca236424bef2280867d Mon Sep 17 00:00:00 2001 From: Aagam Shah Date: Tue, 18 Jul 2017 00:51:44 +0530 Subject: [PATCH 3/7] Reformat code --- .../org/wordcamp/android/BaseActivity.java | 2 +- .../org/wordcamp/android/MyWCFragment.java | 6 - .../wordcamp/android/UpcomingWCFragment.java | 5 - .../android/WordCampDetailActivity.java | 12 +- .../CacheFragmentStatePagerAdapter.java | 8 +- .../adapters/SessionDetailAdapter.java | 6 +- .../android/adapters/WCListAdapter.java | 4 +- .../wordcamp/android/db/DBCommunicator.java | 20 +- .../android/networking/WPAPIClient.java | 8 +- .../wordcamp/android/objects/MiniSpeaker.java | 6 +- .../wordcamp/android/objects/WordCampDB.java | 6 +- .../android/objects/session/Author.java | 2 - .../android/objects/session/Links_.java | 113 -------- .../android/objects/session/Links__.java | 51 ---- .../android/objects/session/Meta_.java | 31 --- .../android/objects/session/Meta__.java | 31 --- .../android/objects/session/Session.java | 6 +- .../android/objects/session/WcbTrack.java | 6 +- .../android/objects/speaker/Author_.java | 252 ------------------ .../android/objects/speaker/Links_.java | 111 -------- .../android/objects/speaker/Links__.java | 49 ---- .../android/objects/speaker/Links___.java | 111 -------- .../android/objects/speaker/Links____.java | 49 ---- .../android/objects/speaker/Meta_.java | 29 -- .../android/objects/speaker/Meta__.java | 29 -- .../android/objects/speaker/Meta___.java | 29 -- .../android/objects/speaker/Meta____.java | 29 -- .../android/objects/speaker/Session.java | 12 +- .../android/objects/speaker/SpeakerNew.java | 6 +- .../android/objects/speaker/WcbTrack.java | 6 +- .../{wordcampv2 => wordcamp}/AvatarUrls.java | 2 +- .../{wordcampv2 => wordcamp}/Content.java | 2 +- .../{wordcampv2 => wordcamp}/Embedded.java | 8 +- .../{wordcampv2 => wordcamp}/Meta.java | 2 +- .../SessionV2.java => wordcamp/Session.java} | 4 +- .../{wordcampv2 => wordcamp}/Speaker.java | 2 +- .../{wordcampv2 => wordcamp}/Title.java | 2 +- .../{wordcampv2 => wordcamp}/WordCamp.java | 2 +- .../{wordcampv2 => wordcamp}/WpTerm.java | 2 +- .../wcdetails/SessionDetailsActivity.java | 6 +- .../wcdetails/SpeakerDetailsActivity.java | 2 +- 41 files changed, 70 insertions(+), 999 deletions(-) delete mode 100644 app/src/main/java/org/wordcamp/android/objects/session/Links_.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/session/Links__.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/session/Meta_.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/session/Meta__.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/speaker/Author_.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/speaker/Links_.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/speaker/Links__.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/speaker/Links___.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/speaker/Links____.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/speaker/Meta_.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/speaker/Meta__.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/speaker/Meta___.java delete mode 100644 app/src/main/java/org/wordcamp/android/objects/speaker/Meta____.java rename app/src/main/java/org/wordcamp/android/objects/{wordcampv2 => wordcamp}/AvatarUrls.java (93%) rename app/src/main/java/org/wordcamp/android/objects/{wordcampv2 => wordcamp}/Content.java (87%) rename app/src/main/java/org/wordcamp/android/objects/{wordcampv2 => wordcamp}/Embedded.java (72%) rename app/src/main/java/org/wordcamp/android/objects/{wordcampv2 => wordcamp}/Meta.java (96%) rename app/src/main/java/org/wordcamp/android/objects/{wordcampv2/SessionV2.java => wordcamp/Session.java} (98%) rename app/src/main/java/org/wordcamp/android/objects/{wordcampv2 => wordcamp}/Speaker.java (98%) rename app/src/main/java/org/wordcamp/android/objects/{wordcampv2 => wordcamp}/Title.java (87%) rename app/src/main/java/org/wordcamp/android/objects/{wordcampv2 => wordcamp}/WordCamp.java (99%) rename app/src/main/java/org/wordcamp/android/objects/{wordcampv2 => wordcamp}/WpTerm.java (95%) diff --git a/app/src/main/java/org/wordcamp/android/BaseActivity.java b/app/src/main/java/org/wordcamp/android/BaseActivity.java index 70c4ce5..2a17f00 100644 --- a/app/src/main/java/org/wordcamp/android/BaseActivity.java +++ b/app/src/main/java/org/wordcamp/android/BaseActivity.java @@ -26,7 +26,7 @@ import org.wordcamp.android.networking.ResponseListener; import org.wordcamp.android.networking.WPAPIClient; import org.wordcamp.android.objects.WordCampDB; -import org.wordcamp.android.objects.wordcampv2.WordCamp; +import org.wordcamp.android.objects.wordcamp.WordCamp; import java.text.SimpleDateFormat; import java.util.ArrayList; diff --git a/app/src/main/java/org/wordcamp/android/MyWCFragment.java b/app/src/main/java/org/wordcamp/android/MyWCFragment.java index 87ef398..a29319a 100644 --- a/app/src/main/java/org/wordcamp/android/MyWCFragment.java +++ b/app/src/main/java/org/wordcamp/android/MyWCFragment.java @@ -74,12 +74,6 @@ public void onRefresh() { }); } - - @Override - public void onResume() { - super.onResume(); - } - public void stopRefresh() { refreshLayout.setRefreshing(false); } diff --git a/app/src/main/java/org/wordcamp/android/UpcomingWCFragment.java b/app/src/main/java/org/wordcamp/android/UpcomingWCFragment.java index 4c6c7c0..3e16852 100644 --- a/app/src/main/java/org/wordcamp/android/UpcomingWCFragment.java +++ b/app/src/main/java/org/wordcamp/android/UpcomingWCFragment.java @@ -120,11 +120,6 @@ public int compare(WordCampDB lhs, WordCampDB rhs) { }); } - @Override - public void onDetach() { - super.onDetach(); - } - public void updateList(List wordCampsList) { wordCampDBs = wordCampsList; sortWC(); diff --git a/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java b/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java index 6da65bd..b4b6ab1 100644 --- a/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java +++ b/app/src/main/java/org/wordcamp/android/WordCampDetailActivity.java @@ -21,9 +21,9 @@ import org.wordcamp.android.networking.ResponseListener; import org.wordcamp.android.networking.WPAPIClient; import org.wordcamp.android.objects.WordCampDB; -import org.wordcamp.android.objects.wordcampv2.SessionV2; -import org.wordcamp.android.objects.wordcampv2.Speaker; -import org.wordcamp.android.objects.wordcampv2.WordCamp; +import org.wordcamp.android.objects.wordcamp.Session; +import org.wordcamp.android.objects.wordcamp.Speaker; +import org.wordcamp.android.objects.wordcamp.WordCamp; import org.wordcamp.android.wcdetails.MySessionsActivity; import org.wordcamp.android.wcdetails.SessionsFragment; import org.wordcamp.android.wcdetails.SpeakerFragment; @@ -48,7 +48,7 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); initListener(); wcdb = (WordCampDB) getIntent().getSerializableExtra("wc"); - wcid = (int) wcdb.getWc_id(); + wcid = wcdb.getWc_id(); setContentView(R.layout.activity_wordcamp_detail); communicator = new DBCommunicator(this); communicator.start(); @@ -288,8 +288,8 @@ public void onErrorResponse(VolleyError error) { scheduleResponseListener = new ResponseListener() { @Override public void onResponseReceived(Object o) { - SessionV2[] sessions = (SessionV2[]) o; - for (SessionV2 session : sessions) { + Session[] sessions = (Session[]) o; + for (Session session : sessions) { communicator.addSession(session, wcid); } Toast.makeText(getApplicationContext(), getString(R.string.update_sessions_toast), Toast.LENGTH_SHORT).show(); diff --git a/app/src/main/java/org/wordcamp/android/adapters/CacheFragmentStatePagerAdapter.java b/app/src/main/java/org/wordcamp/android/adapters/CacheFragmentStatePagerAdapter.java index 246ba95..e7027f2 100644 --- a/app/src/main/java/org/wordcamp/android/adapters/CacheFragmentStatePagerAdapter.java +++ b/app/src/main/java/org/wordcamp/android/adapters/CacheFragmentStatePagerAdapter.java @@ -38,8 +38,8 @@ public abstract class CacheFragmentStatePagerAdapter extends FragmentStatePagerA private static final String STATE_PAGE_INDEX_PREFIX = "pageIndex:"; private static final String STATE_PAGE_KEY_PREFIX = "page:"; - private FragmentManager mFm; - private SparseArray mPages; + private final FragmentManager mFm; + private final SparseArray mPages; public CacheFragmentStatePagerAdapter(FragmentManager fm) { super(fm); @@ -134,7 +134,7 @@ public Fragment getItemAt(int position) { * @param index index of the item in the adapter * @return key string for caching Fragment pages */ - protected String createCacheIndex(int index) { + private String createCacheIndex(int index) { return STATE_PAGE_INDEX_PREFIX + index; } @@ -144,7 +144,7 @@ protected String createCacheIndex(int index) { * @param position position of the item in the adapter * @return key string for caching Fragment pages */ - protected String createCacheKey(int position) { + private String createCacheKey(int position) { return STATE_PAGE_KEY_PREFIX + position; } } diff --git a/app/src/main/java/org/wordcamp/android/adapters/SessionDetailAdapter.java b/app/src/main/java/org/wordcamp/android/adapters/SessionDetailAdapter.java index 9e5a384..f206ccd 100644 --- a/app/src/main/java/org/wordcamp/android/adapters/SessionDetailAdapter.java +++ b/app/src/main/java/org/wordcamp/android/adapters/SessionDetailAdapter.java @@ -20,9 +20,9 @@ */ public class SessionDetailAdapter extends BaseAdapter { - private Context mContext; - private List speakers; - private LayoutInflater inflater; + private final Context mContext; + private final List speakers; + private final LayoutInflater inflater; public SessionDetailAdapter(Context ctx, List speakerList){ mContext = ctx; diff --git a/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java b/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java index 9fa879c..55e7cb6 100644 --- a/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java +++ b/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java @@ -69,7 +69,7 @@ public void onBindViewHolder(final ViewHolder holder, final int position) { @Override public void onClick(View v) { if (!wc.isMyWC) { - listener.addToMyWC((int) wc.getWc_id(), position); + listener.addToMyWC(wc.getWc_id(), position); Picasso.with(ctx).load(R.drawable.ic_favorite_solid_24dp).into(holder.bookmark); wc.isMyWC = true; filteredWordCamps.set(position, wc); @@ -77,7 +77,7 @@ public void onClick(View v) { Picasso.with(ctx).load(R.drawable.ic_favorite_outline_24dp).into(holder.bookmark); wc.isMyWC = false; filteredWordCamps.set(position, wc); - listener.removeMyWC((int) wc.getWc_id(), position); + listener.removeMyWC(wc.getWc_id(), position); } } }); diff --git a/app/src/main/java/org/wordcamp/android/db/DBCommunicator.java b/app/src/main/java/org/wordcamp/android/db/DBCommunicator.java index e5a8a00..b84f192 100644 --- a/app/src/main/java/org/wordcamp/android/db/DBCommunicator.java +++ b/app/src/main/java/org/wordcamp/android/db/DBCommunicator.java @@ -12,8 +12,8 @@ import org.wordcamp.android.objects.SessionDB; import org.wordcamp.android.objects.SpeakerDB; import org.wordcamp.android.objects.WordCampDB; -import org.wordcamp.android.objects.wordcampv2.SessionV2; -import org.wordcamp.android.objects.wordcampv2.Speaker; +import org.wordcamp.android.objects.wordcamp.Session; +import org.wordcamp.android.objects.wordcamp.Speaker; import java.util.ArrayList; import java.util.Collections; @@ -29,13 +29,11 @@ */ public class DBCommunicator { - private WCSQLiteHelper helper; + private final WCSQLiteHelper helper; private SQLiteDatabase db; - private Context ctx; - private String space = " "; - - - private Gson gson; + private final Context ctx; + private final String space = " "; + private final Gson gson; public DBCommunicator(Context ctx) { helper = new WCSQLiteHelper(ctx); @@ -153,9 +151,9 @@ public long addSpeaker(Speaker sk, int wcid) { return id; } - private void addSessionFromSpeaker(List sessions, long spid, int wcid) { + private void addSessionFromSpeaker(List sessions, long spid, int wcid) { for (int i = 0; i < sessions.size(); i++) { - SessionV2 ss = sessions.get(i); + Session ss = sessions.get(i); mapSessionToSingleSpeaker(wcid, ss.getId(), spid); } } @@ -170,7 +168,7 @@ private void mapSessionToSingleSpeaker(int wcid, long sid, long spid) { } - public long addSession(SessionV2 ss, int wcid) { + public long addSession(Session ss, int wcid) { ContentValues contentValues = new ContentValues(); contentValues.put("wcid", wcid); contentValues.put("title", ss.getTitle().getRendered()); diff --git a/app/src/main/java/org/wordcamp/android/networking/WPAPIClient.java b/app/src/main/java/org/wordcamp/android/networking/WPAPIClient.java index 2959edb..05eb694 100644 --- a/app/src/main/java/org/wordcamp/android/networking/WPAPIClient.java +++ b/app/src/main/java/org/wordcamp/android/networking/WPAPIClient.java @@ -6,9 +6,9 @@ import org.wordcamp.android.BuildConfig; import org.wordcamp.android.WordCampApplication; -import org.wordcamp.android.objects.wordcampv2.SessionV2; -import org.wordcamp.android.objects.wordcampv2.Speaker; -import org.wordcamp.android.objects.wordcampv2.WordCamp; +import org.wordcamp.android.objects.wordcamp.Session; +import org.wordcamp.android.objects.wordcamp.Speaker; +import org.wordcamp.android.objects.wordcamp.WordCamp; /** * Created by aagam on 14/1/15. @@ -51,7 +51,7 @@ public static void getWordCampSpeakersVolley(String wordcampURL, Context context public static void getWordCampScheduleVolley(String wordcampURL, Context context, Response.ErrorListener errorListener, ResponseListener responseListener){ WCRequest request = new WCRequest(normalizeWordCampUrl(wordcampURL) + QUERY_PARAM_SCHEDULE_V2, - SessionV2[].class, errorListener, responseListener); + Session[].class, errorListener, responseListener); request.setTag(context); WordCampApplication.requestQueue.add(request); } diff --git a/app/src/main/java/org/wordcamp/android/objects/MiniSpeaker.java b/app/src/main/java/org/wordcamp/android/objects/MiniSpeaker.java index 7a12009..cef52e2 100644 --- a/app/src/main/java/org/wordcamp/android/objects/MiniSpeaker.java +++ b/app/src/main/java/org/wordcamp/android/objects/MiniSpeaker.java @@ -4,9 +4,9 @@ * Created by aagam on 28/2/15. */ public class MiniSpeaker { - public String name; - public String dp; - public int id; + public final String name; + public final String dp; + public final int id; public MiniSpeaker(String name, String dp, int id) { this.name = name; diff --git a/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java b/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java index 13c9162..8fddab3 100644 --- a/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java +++ b/app/src/main/java/org/wordcamp/android/objects/WordCampDB.java @@ -5,7 +5,7 @@ import com.google.gson.Gson; -import org.wordcamp.android.objects.wordcampv2.WordCamp; +import org.wordcamp.android.objects.wordcamp.WordCamp; import java.io.Serializable; @@ -83,8 +83,8 @@ public void setUrl(String url) { this.url = url; } - public long getWc_id() { - return wc_id; + public int getWc_id() { + return (int) wc_id; } public void setWc_id(long wc_id) { diff --git a/app/src/main/java/org/wordcamp/android/objects/session/Author.java b/app/src/main/java/org/wordcamp/android/objects/session/Author.java index 36fab80..d62fbd5 100644 --- a/app/src/main/java/org/wordcamp/android/objects/session/Author.java +++ b/app/src/main/java/org/wordcamp/android/objects/session/Author.java @@ -1,11 +1,9 @@ package org.wordcamp.android.objects.session; - import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; - public class Author { @Expose diff --git a/app/src/main/java/org/wordcamp/android/objects/session/Links_.java b/app/src/main/java/org/wordcamp/android/objects/session/Links_.java deleted file mode 100644 index efe8bea..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/session/Links_.java +++ /dev/null @@ -1,113 +0,0 @@ - -package org.wordcamp.android.objects.session; - - -import com.google.gson.annotations.Expose; -import com.google.gson.annotations.SerializedName; - - -public class Links_ { - - @Expose - private String self; - @Expose - private String author; - @Expose - private String collection; - @Expose - private String replies; - @SerializedName("version-history") - @Expose - private String versionHistory; - - /** - * - * @return - * The self - */ - public String getSelf() { - return self; - } - - /** - * - * @param self - * The self - */ - public void setSelf(String self) { - this.self = self; - } - - /** - * - * @return - * The author - */ - public String getAuthor() { - return author; - } - - /** - * - * @param author - * The author - */ - public void setAuthor(String author) { - this.author = author; - } - - /** - * - * @return - * The collection - */ - public String getCollection() { - return collection; - } - - /** - * - * @param collection - * The collection - */ - public void setCollection(String collection) { - this.collection = collection; - } - - /** - * - * @return - * The replies - */ - public String getReplies() { - return replies; - } - - /** - * - * @param replies - * The replies - */ - public void setReplies(String replies) { - this.replies = replies; - } - - /** - * - * @return - * The versionHistory - */ - public String getVersionHistory() { - return versionHistory; - } - - /** - * - * @param versionHistory - * The version-history - */ - public void setVersionHistory(String versionHistory) { - this.versionHistory = versionHistory; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/session/Links__.java b/app/src/main/java/org/wordcamp/android/objects/session/Links__.java deleted file mode 100644 index b471ca3..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/session/Links__.java +++ /dev/null @@ -1,51 +0,0 @@ - -package org.wordcamp.android.objects.session; - - -import com.google.gson.annotations.Expose; - - -public class Links__ { - - @Expose - private String collection; - @Expose - private String self; - - /** - * - * @return - * The collection - */ - public String getCollection() { - return collection; - } - - /** - * - * @param collection - * The collection - */ - public void setCollection(String collection) { - this.collection = collection; - } - - /** - * - * @return - * The self - */ - public String getSelf() { - return self; - } - - /** - * - * @param self - * The self - */ - public void setSelf(String self) { - this.self = self; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/session/Meta_.java b/app/src/main/java/org/wordcamp/android/objects/session/Meta_.java deleted file mode 100644 index d0890ba..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/session/Meta_.java +++ /dev/null @@ -1,31 +0,0 @@ - -package org.wordcamp.android.objects.session; - - -import com.google.gson.annotations.Expose; - - -public class Meta_ { - - @Expose - private Links_ links; - - /** - * - * @return - * The links - */ - public Links_ getLinks() { - return links; - } - - /** - * - * @param links - * The links - */ - public void setLinks(Links_ links) { - this.links = links; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/session/Meta__.java b/app/src/main/java/org/wordcamp/android/objects/session/Meta__.java deleted file mode 100644 index 41124ce..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/session/Meta__.java +++ /dev/null @@ -1,31 +0,0 @@ - -package org.wordcamp.android.objects.session; - - -import com.google.gson.annotations.Expose; - - -public class Meta__ { - - @Expose - private Links__ links; - - /** - * - * @return - * The links - */ - public Links__ getLinks() { - return links; - } - - /** - * - * @param links - * The links - */ - public void setLinks(Links__ links) { - this.links = links; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/session/Session.java b/app/src/main/java/org/wordcamp/android/objects/session/Session.java index da987a6..67f12b3 100644 --- a/app/src/main/java/org/wordcamp/android/objects/session/Session.java +++ b/app/src/main/java/org/wordcamp/android/objects/session/Session.java @@ -54,7 +54,7 @@ class Session { @Expose private String modifiedGmt; @Expose - private Meta_ meta; + private Meta meta; @Expose private Foo foo; @SerializedName("featured_image") @@ -428,7 +428,7 @@ public void setModifiedGmt(String modifiedGmt) { * @return * The meta */ - public Meta_ getMeta() { + public Meta getMeta() { return meta; } @@ -437,7 +437,7 @@ public Meta_ getMeta() { * @param meta * The meta */ - public void setMeta(Meta_ meta) { + public void setMeta(Meta meta) { this.meta = meta; } diff --git a/app/src/main/java/org/wordcamp/android/objects/session/WcbTrack.java b/app/src/main/java/org/wordcamp/android/objects/session/WcbTrack.java index 165924b..2612c3c 100644 --- a/app/src/main/java/org/wordcamp/android/objects/session/WcbTrack.java +++ b/app/src/main/java/org/wordcamp/android/objects/session/WcbTrack.java @@ -22,7 +22,7 @@ class WcbTrack { @Expose private String link; @Expose - private Meta__ meta; + private Meta meta; /** * @@ -155,7 +155,7 @@ public void setLink(String link) { * @return * The meta */ - public Meta__ getMeta() { + public Meta getMeta() { return meta; } @@ -164,7 +164,7 @@ public Meta__ getMeta() { * @param meta * The meta */ - public void setMeta(Meta__ meta) { + public void setMeta(Meta meta) { this.meta = meta; } diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Author_.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Author_.java deleted file mode 100644 index 2556c0c..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Author_.java +++ /dev/null @@ -1,252 +0,0 @@ - -package org.wordcamp.android.objects.speaker; - -import com.google.gson.annotations.Expose; -import com.google.gson.annotations.SerializedName; - -public class Author_ { - - @Expose - private int ID; - @Expose - private String username; - @Expose - private String name; - @SerializedName("first_name") - @Expose - private String firstName; - @SerializedName("last_name") - @Expose - private String lastName; - @Expose - private String nickname; - @Expose - private String slug; - @Expose - private String URL; - @Expose - private String avatar; - @Expose - private String description; - @Expose - private String registered; - @Expose - private Meta__ meta; - - /** - * - * @return - * The ID - */ - public int getID() { - return ID; - } - - /** - * - * @param ID - * The ID - */ - public void setID(int ID) { - this.ID = ID; - } - - /** - * - * @return - * The username - */ - public String getUsername() { - return username; - } - - /** - * - * @param username - * The username - */ - public void setUsername(String username) { - this.username = username; - } - - /** - * - * @return - * The name - */ - public String getName() { - return name; - } - - /** - * - * @param name - * The name - */ - public void setName(String name) { - this.name = name; - } - - /** - * - * @return - * The firstName - */ - public String getFirstName() { - return firstName; - } - - /** - * - * @param firstName - * The first_name - */ - public void setFirstName(String firstName) { - this.firstName = firstName; - } - - /** - * - * @return - * The lastName - */ - public String getLastName() { - return lastName; - } - - /** - * - * @param lastName - * The last_name - */ - public void setLastName(String lastName) { - this.lastName = lastName; - } - - /** - * - * @return - * The nickname - */ - public String getNickname() { - return nickname; - } - - /** - * - * @param nickname - * The nickname - */ - public void setNickname(String nickname) { - this.nickname = nickname; - } - - /** - * - * @return - * The slug - */ - public String getSlug() { - return slug; - } - - /** - * - * @param slug - * The slug - */ - public void setSlug(String slug) { - this.slug = slug; - } - - /** - * - * @return - * The URL - */ - public String getURL() { - return URL; - } - - /** - * - * @param URL - * The URL - */ - public void setURL(String URL) { - this.URL = URL; - } - - /** - * - * @return - * The avatar - */ - public String getAvatar() { - return avatar; - } - - /** - * - * @param avatar - * The avatar - */ - public void setAvatar(String avatar) { - this.avatar = avatar; - } - - /** - * - * @return - * The description - */ - public String getDescription() { - return description; - } - - /** - * - * @param description - * The description - */ - public void setDescription(String description) { - this.description = description; - } - - /** - * - * @return - * The registered - */ - public String getRegistered() { - return registered; - } - - /** - * - * @param registered - * The registered - */ - public void setRegistered(String registered) { - this.registered = registered; - } - - /** - * - * @return - * The meta - */ - public Meta__ getMeta() { - return meta; - } - - /** - * - * @param meta - * The meta - */ - public void setMeta(Meta__ meta) { - this.meta = meta; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Links_.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Links_.java deleted file mode 100644 index 049a7e6..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Links_.java +++ /dev/null @@ -1,111 +0,0 @@ - -package org.wordcamp.android.objects.speaker; - -import com.google.gson.annotations.Expose; -import com.google.gson.annotations.SerializedName; - -public class Links_ { - - @Expose - private String self; - @Expose - private String author; - @Expose - private String collection; - @Expose - private String replies; - @SerializedName("version-history") - @Expose - private String versionHistory; - - /** - * - * @return - * The self - */ - public String getSelf() { - return self; - } - - /** - * - * @param self - * The self - */ - public void setSelf(String self) { - this.self = self; - } - - /** - * - * @return - * The author - */ - public String getAuthor() { - return author; - } - - /** - * - * @param author - * The author - */ - public void setAuthor(String author) { - this.author = author; - } - - /** - * - * @return - * The collection - */ - public String getCollection() { - return collection; - } - - /** - * - * @param collection - * The collection - */ - public void setCollection(String collection) { - this.collection = collection; - } - - /** - * - * @return - * The replies - */ - public String getReplies() { - return replies; - } - - /** - * - * @param replies - * The replies - */ - public void setReplies(String replies) { - this.replies = replies; - } - - /** - * - * @return - * The versionHistory - */ - public String getVersionHistory() { - return versionHistory; - } - - /** - * - * @param versionHistory - * The version-history - */ - public void setVersionHistory(String versionHistory) { - this.versionHistory = versionHistory; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Links__.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Links__.java deleted file mode 100644 index bf08611..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Links__.java +++ /dev/null @@ -1,49 +0,0 @@ - -package org.wordcamp.android.objects.speaker; - -import com.google.gson.annotations.Expose; - -public class Links__ { - - @Expose - private String self; - @Expose - private String archives; - - /** - * - * @return - * The self - */ - public String getSelf() { - return self; - } - - /** - * - * @param self - * The self - */ - public void setSelf(String self) { - this.self = self; - } - - /** - * - * @return - * The archives - */ - public String getArchives() { - return archives; - } - - /** - * - * @param archives - * The archives - */ - public void setArchives(String archives) { - this.archives = archives; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Links___.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Links___.java deleted file mode 100644 index b2cb303..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Links___.java +++ /dev/null @@ -1,111 +0,0 @@ - -package org.wordcamp.android.objects.speaker; - -import com.google.gson.annotations.Expose; -import com.google.gson.annotations.SerializedName; - -public class Links___ { - - @Expose - private String self; - @Expose - private String author; - @Expose - private String collection; - @Expose - private String replies; - @SerializedName("version-history") - @Expose - private String versionHistory; - - /** - * - * @return - * The self - */ - public String getSelf() { - return self; - } - - /** - * - * @param self - * The self - */ - public void setSelf(String self) { - this.self = self; - } - - /** - * - * @return - * The author - */ - public String getAuthor() { - return author; - } - - /** - * - * @param author - * The author - */ - public void setAuthor(String author) { - this.author = author; - } - - /** - * - * @return - * The collection - */ - public String getCollection() { - return collection; - } - - /** - * - * @param collection - * The collection - */ - public void setCollection(String collection) { - this.collection = collection; - } - - /** - * - * @return - * The replies - */ - public String getReplies() { - return replies; - } - - /** - * - * @param replies - * The replies - */ - public void setReplies(String replies) { - this.replies = replies; - } - - /** - * - * @return - * The versionHistory - */ - public String getVersionHistory() { - return versionHistory; - } - - /** - * - * @param versionHistory - * The version-history - */ - public void setVersionHistory(String versionHistory) { - this.versionHistory = versionHistory; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Links____.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Links____.java deleted file mode 100644 index b5d1da4..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Links____.java +++ /dev/null @@ -1,49 +0,0 @@ - -package org.wordcamp.android.objects.speaker; - -import com.google.gson.annotations.Expose; - -public class Links____ { - - @Expose - private String collection; - @Expose - private String self; - - /** - * - * @return - * The collection - */ - public String getCollection() { - return collection; - } - - /** - * - * @param collection - * The collection - */ - public void setCollection(String collection) { - this.collection = collection; - } - - /** - * - * @return - * The self - */ - public String getSelf() { - return self; - } - - /** - * - * @param self - * The self - */ - public void setSelf(String self) { - this.self = self; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Meta_.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Meta_.java deleted file mode 100644 index 5ada42e..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Meta_.java +++ /dev/null @@ -1,29 +0,0 @@ - -package org.wordcamp.android.objects.speaker; - -import com.google.gson.annotations.Expose; - -public class Meta_ { - - @Expose - private Links_ links; - - /** - * - * @return - * The links - */ - public Links_ getLinks() { - return links; - } - - /** - * - * @param links - * The links - */ - public void setLinks(Links_ links) { - this.links = links; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Meta__.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Meta__.java deleted file mode 100644 index 7c0700b..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Meta__.java +++ /dev/null @@ -1,29 +0,0 @@ - -package org.wordcamp.android.objects.speaker; - -import com.google.gson.annotations.Expose; - -public class Meta__ { - - @Expose - private Links__ links; - - /** - * - * @return - * The links - */ - public Links__ getLinks() { - return links; - } - - /** - * - * @param links - * The links - */ - public void setLinks(Links__ links) { - this.links = links; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Meta___.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Meta___.java deleted file mode 100644 index fbfca5d..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Meta___.java +++ /dev/null @@ -1,29 +0,0 @@ - -package org.wordcamp.android.objects.speaker; - -import com.google.gson.annotations.Expose; - -public class Meta___ { - - @Expose - private Links___ links; - - /** - * - * @return - * The links - */ - public Links___ getLinks() { - return links; - } - - /** - * - * @param links - * The links - */ - public void setLinks(Links___ links) { - this.links = links; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Meta____.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Meta____.java deleted file mode 100644 index b8afea9..0000000 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Meta____.java +++ /dev/null @@ -1,29 +0,0 @@ - -package org.wordcamp.android.objects.speaker; - -import com.google.gson.annotations.Expose; - -public class Meta____ { - - @Expose - private Links____ links; - - /** - * - * @return - * The links - */ - public Links____ getLinks() { - return links; - } - - /** - * - * @param links - * The links - */ - public void setLinks(Links____ links) { - this.links = links; - } - -} diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/Session.java b/app/src/main/java/org/wordcamp/android/objects/speaker/Session.java index 8ee1eea..8869bd3 100644 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/Session.java +++ b/app/src/main/java/org/wordcamp/android/objects/speaker/Session.java @@ -18,7 +18,7 @@ public class Session { @Expose private String type; @Expose - private Author_ author; + private Author author; @Expose private String content; @Expose @@ -61,7 +61,7 @@ public class Session { @Expose private String modifiedGmt; @Expose - private Meta___ meta; + private Meta meta; @Expose private Terms terms; @SerializedName("post_meta") @@ -145,7 +145,7 @@ public void setType(String type) { * @return * The author */ - public Author_ getAuthor() { + public Author getAuthor() { return author; } @@ -154,7 +154,7 @@ public Author_ getAuthor() { * @param author * The author */ - public void setAuthor(Author_ author) { + public void setAuthor(Author author) { this.author = author; } @@ -469,7 +469,7 @@ public void setModifiedGmt(String modifiedGmt) { * @return * The meta */ - public Meta___ getMeta() { + public Meta getMeta() { return meta; } @@ -478,7 +478,7 @@ public Meta___ getMeta() { * @param meta * The meta */ - public void setMeta(Meta___ meta) { + public void setMeta(Meta meta) { this.meta = meta; } diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/SpeakerNew.java b/app/src/main/java/org/wordcamp/android/objects/speaker/SpeakerNew.java index 0c01045..f83dc11 100644 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/SpeakerNew.java +++ b/app/src/main/java/org/wordcamp/android/objects/speaker/SpeakerNew.java @@ -61,7 +61,7 @@ public class SpeakerNew { @Expose private String modifiedGmt; @Expose - private Meta_ meta; + private Meta meta; @Expose private List terms = new ArrayList(); @SerializedName("post_meta") @@ -473,7 +473,7 @@ public void setModifiedGmt(String modifiedGmt) { * @return * The meta */ - public Meta_ getMeta() { + public Meta getMeta() { return meta; } @@ -482,7 +482,7 @@ public Meta_ getMeta() { * @param meta * The meta */ - public void setMeta(Meta_ meta) { + public void setMeta(Meta meta) { this.meta = meta; } diff --git a/app/src/main/java/org/wordcamp/android/objects/speaker/WcbTrack.java b/app/src/main/java/org/wordcamp/android/objects/speaker/WcbTrack.java index 4d757e5..11b64b7 100644 --- a/app/src/main/java/org/wordcamp/android/objects/speaker/WcbTrack.java +++ b/app/src/main/java/org/wordcamp/android/objects/speaker/WcbTrack.java @@ -22,7 +22,7 @@ public class WcbTrack { @Expose private String link; @Expose - private Meta____ meta; + private Meta meta; /** * @@ -173,7 +173,7 @@ public void setLink(String link) { * @return * The meta */ - public Meta____ getMeta() { + public Meta getMeta() { return meta; } @@ -182,7 +182,7 @@ public Meta____ getMeta() { * @param meta * The meta */ - public void setMeta(Meta____ meta) { + public void setMeta(Meta meta) { this.meta = meta; } diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/AvatarUrls.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/AvatarUrls.java similarity index 93% rename from app/src/main/java/org/wordcamp/android/objects/wordcampv2/AvatarUrls.java rename to app/src/main/java/org/wordcamp/android/objects/wordcamp/AvatarUrls.java index 86cab95..1278535 100644 --- a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/AvatarUrls.java +++ b/app/src/main/java/org/wordcamp/android/objects/wordcamp/AvatarUrls.java @@ -1,5 +1,5 @@ -package org.wordcamp.android.objects.wordcampv2; +package org.wordcamp.android.objects.wordcamp; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Content.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Content.java similarity index 87% rename from app/src/main/java/org/wordcamp/android/objects/wordcampv2/Content.java rename to app/src/main/java/org/wordcamp/android/objects/wordcamp/Content.java index 3c11637..a433879 100644 --- a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Content.java +++ b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Content.java @@ -1,5 +1,5 @@ -package org.wordcamp.android.objects.wordcampv2; +package org.wordcamp.android.objects.wordcamp; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Embedded.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Embedded.java similarity index 72% rename from app/src/main/java/org/wordcamp/android/objects/wordcampv2/Embedded.java rename to app/src/main/java/org/wordcamp/android/objects/wordcamp/Embedded.java index 137fa43..3a6ee8d 100644 --- a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Embedded.java +++ b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Embedded.java @@ -1,5 +1,5 @@ -package org.wordcamp.android.objects.wordcampv2; +package org.wordcamp.android.objects.wordcamp; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; @@ -13,7 +13,7 @@ public class Embedded { @SerializedName("sessions") @Expose - private List sessions = null; + private List sessions = null; public List> getWpTerm() { return wpTerm; @@ -23,11 +23,11 @@ public void setWpTerm(List> wpTerm) { this.wpTerm = wpTerm; } - public List getSessions() { + public List getSessions() { return sessions; } - public void setSessions(List sessions) { + public void setSessions(List sessions) { this.sessions = sessions; } } diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Meta.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta.java similarity index 96% rename from app/src/main/java/org/wordcamp/android/objects/wordcampv2/Meta.java rename to app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta.java index 4bd3a97..82edf0f 100644 --- a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Meta.java +++ b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Meta.java @@ -1,5 +1,5 @@ -package org.wordcamp.android.objects.wordcampv2; +package org.wordcamp.android.objects.wordcamp; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/SessionV2.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Session.java similarity index 98% rename from app/src/main/java/org/wordcamp/android/objects/wordcampv2/SessionV2.java rename to app/src/main/java/org/wordcamp/android/objects/wordcamp/Session.java index 7b8c475..d42e27a 100644 --- a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/SessionV2.java +++ b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Session.java @@ -1,12 +1,12 @@ -package org.wordcamp.android.objects.wordcampv2; +package org.wordcamp.android.objects.wordcamp; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; import java.util.List; -public class SessionV2 { +public class Session { @SerializedName("id") @Expose diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Speaker.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Speaker.java similarity index 98% rename from app/src/main/java/org/wordcamp/android/objects/wordcampv2/Speaker.java rename to app/src/main/java/org/wordcamp/android/objects/wordcamp/Speaker.java index 3a5890d..dc74a84 100644 --- a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Speaker.java +++ b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Speaker.java @@ -1,5 +1,5 @@ -package org.wordcamp.android.objects.wordcampv2; +package org.wordcamp.android.objects.wordcamp; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Title.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Title.java similarity index 87% rename from app/src/main/java/org/wordcamp/android/objects/wordcampv2/Title.java rename to app/src/main/java/org/wordcamp/android/objects/wordcamp/Title.java index 062270b..ff514b3 100644 --- a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/Title.java +++ b/app/src/main/java/org/wordcamp/android/objects/wordcamp/Title.java @@ -1,5 +1,5 @@ -package org.wordcamp.android.objects.wordcampv2; +package org.wordcamp.android.objects.wordcamp; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WordCamp.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/WordCamp.java similarity index 99% rename from app/src/main/java/org/wordcamp/android/objects/wordcampv2/WordCamp.java rename to app/src/main/java/org/wordcamp/android/objects/wordcamp/WordCamp.java index 558fce2..07a07a6 100644 --- a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WordCamp.java +++ b/app/src/main/java/org/wordcamp/android/objects/wordcamp/WordCamp.java @@ -1,5 +1,5 @@ -package org.wordcamp.android.objects.wordcampv2; +package org.wordcamp.android.objects.wordcamp; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; diff --git a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WpTerm.java b/app/src/main/java/org/wordcamp/android/objects/wordcamp/WpTerm.java similarity index 95% rename from app/src/main/java/org/wordcamp/android/objects/wordcampv2/WpTerm.java rename to app/src/main/java/org/wordcamp/android/objects/wordcamp/WpTerm.java index 06891d1..1bb51c8 100644 --- a/app/src/main/java/org/wordcamp/android/objects/wordcampv2/WpTerm.java +++ b/app/src/main/java/org/wordcamp/android/objects/wordcamp/WpTerm.java @@ -1,5 +1,5 @@ -package org.wordcamp.android.objects.wordcampv2; +package org.wordcamp.android.objects.wordcamp; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; diff --git a/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java b/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java index 548c862..a6685a3 100644 --- a/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java +++ b/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java @@ -23,7 +23,7 @@ import org.wordcamp.android.objects.MiniSpeaker; import org.wordcamp.android.objects.SessionDB; import org.wordcamp.android.objects.SpeakerDB; -import org.wordcamp.android.objects.wordcampv2.SessionV2; +import org.wordcamp.android.objects.wordcamp.Session; import org.wordcamp.android.utils.WordCampUtils; import java.util.ArrayList; @@ -35,7 +35,7 @@ public class SessionDetailsActivity extends AppCompatActivity { private SessionDB sessionDB; - private SessionV2 session; + private Session session; private ArrayList speakerList; private DBCommunicator communicator; private FavoriteSession fav; @@ -53,7 +53,7 @@ protected void onCreate(Bundle savedInstanceState) { private void initGUI() { Gson gson = new Gson(); - session = gson.fromJson(sessionDB.getGson_object(), SessionV2.class); + session = gson.fromJson(sessionDB.getGson_object(), Session.class); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); toolbar.setTitle(""); setSupportActionBar(toolbar); diff --git a/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java b/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java index 0428ce1..1f04059 100644 --- a/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java +++ b/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java @@ -33,7 +33,7 @@ import org.wordcamp.android.db.DBCommunicator; import org.wordcamp.android.objects.SessionDB; import org.wordcamp.android.objects.SpeakerDB; -import org.wordcamp.android.objects.wordcampv2.Speaker; +import org.wordcamp.android.objects.wordcamp.Speaker; import org.wordcamp.android.utils.Utils; import org.wordcamp.android.utils.WordCampUtils; From 78eb76db98986679763a80858918f396b439190c Mon Sep 17 00:00:00 2001 From: Aagam Shah Date: Sun, 3 Dec 2017 20:26:44 +0530 Subject: [PATCH 4/7] Update JDK version to 8 for travis --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 48404d8..0e6eaa3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,5 @@ language: android -jdk: oraclejdk7 +jdk: oraclejdk8 sudo: false android: From f2eeaffff0a9cc817b6610c9812673e7063cd21e Mon Sep 17 00:00:00 2001 From: Aagam Shah Date: Sun, 3 Dec 2017 22:17:51 +0530 Subject: [PATCH 5/7] bump up support libs and build tools --- app/build.gradle | 24 ++++++++++++++--------- app/src/main/res/layout/item_wordcamp.xml | 2 +- build.gradle | 4 ++++ 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index ea73207..e2d76f9 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -4,13 +4,19 @@ repositories{ maven { url 'http://dl.bintray.com/amulyakhare/maven' } + maven { + url 'https://maven.google.com/' + name 'Google' + } } +ext.supportLibrariesVersion = '27.0.1' + android { useLibrary 'org.apache.http.legacy' - compileSdkVersion 23 - buildToolsVersion "23.0.1" + compileSdkVersion 27 + buildToolsVersion "27.0.1" defaultConfig { applicationId "org.wordcamp.android" @@ -41,17 +47,17 @@ android { } dependencies { - compile 'com.android.support:design:23.0.1' - compile 'com.android.support:appcompat-v7:23.0.1' - compile 'com.android.support:cardview-v7:23.0.1' - compile 'com.android.support:recyclerview-v7:23.0.1' - compile 'com.google.code.gson:gson:2.3.1' - compile 'com.squareup.picasso:picasso:2.4.0' + compile "com.android.support:design:$supportLibrariesVersion" + compile "com.android.support:appcompat-v7:$supportLibrariesVersion" + compile "com.android.support:cardview-v7:$supportLibrariesVersion" + compile "com.android.support:recyclerview-v7:$supportLibrariesVersion" + compile 'com.google.code.gson:gson:2.8.2' + compile 'com.squareup.picasso:picasso:2.5.2' compile 'se.emilsjolander:stickylistheaders:2.6.0' compile 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1' compile 'com.parse.bolts:bolts-android:1.2.0' compile 'de.hdodenhof:circleimageview:1.3.0' - compile 'com.mcxiaoke.volley:library:1.0.17' + compile 'com.mcxiaoke.volley:library:1.0.19' } android.buildTypes.all { buildType -> diff --git a/app/src/main/res/layout/item_wordcamp.xml b/app/src/main/res/layout/item_wordcamp.xml index b29f9e7..e99a7df 100644 --- a/app/src/main/res/layout/item_wordcamp.xml +++ b/app/src/main/res/layout/item_wordcamp.xml @@ -4,7 +4,7 @@ android:id="@+id/layoutContainer" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" - android:layout_height="match_parent" + android:layout_height="wrap_content" android:background="@android:color/white" android:padding="@dimen/list_item_padding"> diff --git a/build.gradle b/build.gradle index e220f0b..97cdc0b 100644 --- a/build.gradle +++ b/build.gradle @@ -3,6 +3,10 @@ buildscript { repositories { jcenter() + maven { + url 'https://maven.google.com/' + name 'Google' + } } dependencies { classpath 'com.android.tools.build:gradle:2.1.2' From 67e0afd80f0802c33567c6c011943947b6bfa1b3 Mon Sep 17 00:00:00 2001 From: Aagam Shah Date: Sun, 3 Dec 2017 22:36:19 +0530 Subject: [PATCH 6/7] Update build tool version for travis --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0e6eaa3..185d9f7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,8 +6,8 @@ android: components: - extra-android-m2repository - extra-android-support - - build-tools-23.0.1 - - android-23 + - build-tools-27.0.1 + - android-27 env: global: From 706d2fda869b1b37a9b3aaa712716405a0e98ee9 Mon Sep 17 00:00:00 2001 From: Aagam Shah Date: Sun, 3 Dec 2017 23:27:44 +0530 Subject: [PATCH 7/7] Bump up gradle version and fix lint issues --- .../org/wordcamp/android/adapters/WCListAdapter.java | 12 ++++++------ .../android/wcdetails/MySessionsActivity.java | 4 +--- .../android/wcdetails/SessionDetailsActivity.java | 3 +-- .../android/wcdetails/SpeakerDetailsActivity.java | 1 - build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- 6 files changed, 10 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java b/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java index 55e7cb6..8fbdb01 100644 --- a/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java +++ b/app/src/main/java/org/wordcamp/android/adapters/WCListAdapter.java @@ -55,7 +55,6 @@ public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { @Override public void onBindViewHolder(final ViewHolder holder, final int position) { - final WordCampDB wc = filteredWordCamps.get(position); holder.title.setText(wc.getFormattedWCTitle()); holder.date.setText(WordCampUtils.getProperDate(wc)); @@ -68,16 +67,17 @@ public void onBindViewHolder(final ViewHolder holder, final int position) { holder.bookmark.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { + int holderPosition = holder.getAdapterPosition(); if (!wc.isMyWC) { - listener.addToMyWC(wc.getWc_id(), position); + listener.addToMyWC(wc.getWc_id(), holderPosition); Picasso.with(ctx).load(R.drawable.ic_favorite_solid_24dp).into(holder.bookmark); wc.isMyWC = true; - filteredWordCamps.set(position, wc); + filteredWordCamps.set(holderPosition, wc); } else { Picasso.with(ctx).load(R.drawable.ic_favorite_outline_24dp).into(holder.bookmark); wc.isMyWC = false; - filteredWordCamps.set(position, wc); - listener.removeMyWC(wc.getWc_id(), position); + filteredWordCamps.set(holderPosition, wc); + listener.removeMyWC(wc.getWc_id(), holderPosition); } } }); @@ -85,7 +85,7 @@ public void onClick(View v) { holder.itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - WordCampDB wc = getItem(position); + WordCampDB wc = getItem(holder.getAdapterPosition()); wcSelectedListener.onWCSelected(wc); } }); diff --git a/app/src/main/java/org/wordcamp/android/wcdetails/MySessionsActivity.java b/app/src/main/java/org/wordcamp/android/wcdetails/MySessionsActivity.java index 53656ad..522f0df 100644 --- a/app/src/main/java/org/wordcamp/android/wcdetails/MySessionsActivity.java +++ b/app/src/main/java/org/wordcamp/android/wcdetails/MySessionsActivity.java @@ -24,7 +24,6 @@ */ public class MySessionsActivity extends AppCompatActivity implements SessionsListAdapter.OnAddToMySessionListener { - private Toolbar toolbar; private DBCommunicator communicator; private int wcid; private FavoriteSession favoriteSession; @@ -41,10 +40,9 @@ protected void onCreate(Bundle savedInstanceState) { } private void initGUI() { - toolbar = (Toolbar) findViewById(R.id.toolbar); + Toolbar toolbar = findViewById(R.id.toolbar); toolbar.setTitle(getString(R.string.my_sessions_title)); setSupportActionBar(toolbar); - getSupportActionBar().setDefaultDisplayHomeAsUpEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true); final List sessionDBList = communicator.getFavoriteSessions(wcid); diff --git a/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java b/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java index a6685a3..24e6b00 100644 --- a/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java +++ b/app/src/main/java/org/wordcamp/android/wcdetails/SessionDetailsActivity.java @@ -57,7 +57,6 @@ private void initGUI() { Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); toolbar.setTitle(""); setSupportActionBar(toolbar); - getSupportActionBar().setDefaultDisplayHomeAsUpEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true); View headerView = LayoutInflater.from(this).inflate(R.layout.item_header_session, null); @@ -72,7 +71,7 @@ private void initGUI() { String time = WordCampUtils.getFormattedTime(sessionDB.getTime()); String track = sessionDB.getLocation(); String sep = getString(R.string.separator); - subtitle.setText(date + sep + time + sep + Html.fromHtml(track)); + subtitle.setText(String.format("%s%s%s%s%s", date, sep, time, sep, Html.fromHtml(track))); } else { subtitle.setText(WordCampUtils.getFormattedDate(sessionDB.getTime())); } diff --git a/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java b/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java index 1f04059..3422613 100644 --- a/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java +++ b/app/src/main/java/org/wordcamp/android/wcdetails/SpeakerDetailsActivity.java @@ -98,7 +98,6 @@ private void initGUI() { toolbar.setTitle(speakerDB.getName()); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); - getSupportActionBar().setDefaultDisplayHomeAsUpEnabled(true); // Load the high-resolution "zoomed-in" image. diff --git a/build.gradle b/build.gradle index 97cdc0b..9d23c1b 100644 --- a/build.gradle +++ b/build.gradle @@ -9,7 +9,7 @@ buildscript { } } dependencies { - classpath 'com.android.tools.build:gradle:2.1.2' + classpath 'com.android.tools.build:gradle:3.0.1' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 882a9a6..8206b40 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.14-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip