diff --git a/.idea/encodings.xml b/.idea/encodings.xml
deleted file mode 100644
index 97626ba..0000000
--- a/.idea/encodings.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/statistic.xml b/.idea/statistic.xml
deleted file mode 100644
index 5d396c1..0000000
--- a/.idea/statistic.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
deleted file mode 100644
index 94a25f7..0000000
--- a/.idea/vcs.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.gitignore b/MyAppL11Assign/.gitignore
similarity index 100%
rename from .gitignore
rename to MyAppL11Assign/.gitignore
diff --git a/.idea/compiler.xml b/MyAppL11Assign/.idea/compiler.xml
similarity index 100%
rename from .idea/compiler.xml
rename to MyAppL11Assign/.idea/compiler.xml
diff --git a/.idea/copyright/profiles_settings.xml b/MyAppL11Assign/.idea/copyright/profiles_settings.xml
similarity index 100%
rename from .idea/copyright/profiles_settings.xml
rename to MyAppL11Assign/.idea/copyright/profiles_settings.xml
diff --git a/.idea/gradle.xml b/MyAppL11Assign/.idea/gradle.xml
similarity index 100%
rename from .idea/gradle.xml
rename to MyAppL11Assign/.idea/gradle.xml
diff --git a/.idea/misc.xml b/MyAppL11Assign/.idea/misc.xml
similarity index 100%
rename from .idea/misc.xml
rename to MyAppL11Assign/.idea/misc.xml
diff --git a/.idea/modules.xml b/MyAppL11Assign/.idea/modules.xml
similarity index 67%
rename from .idea/modules.xml
rename to MyAppL11Assign/.idea/modules.xml
index 1b3ccab..35cc577 100644
--- a/.idea/modules.xml
+++ b/MyAppL11Assign/.idea/modules.xml
@@ -2,7 +2,7 @@
-
+
diff --git a/.idea/runConfigurations.xml b/MyAppL11Assign/.idea/runConfigurations.xml
similarity index 100%
rename from .idea/runConfigurations.xml
rename to MyAppL11Assign/.idea/runConfigurations.xml
diff --git a/app/.gitignore b/MyAppL11Assign/app/.gitignore
similarity index 100%
rename from app/.gitignore
rename to MyAppL11Assign/app/.gitignore
diff --git a/app/build.gradle b/MyAppL11Assign/app/build.gradle
similarity index 87%
rename from app/build.gradle
rename to MyAppL11Assign/app/build.gradle
index b963ad0..9540d76 100644
--- a/app/build.gradle
+++ b/MyAppL11Assign/app/build.gradle
@@ -1,12 +1,11 @@
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
-apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 26
- buildToolsVersion "25.0.2"
+ buildToolsVersion "25.0.3"
defaultConfig {
- applicationId "com.codingblocks.restapiretrofitjson"
+ applicationId "com.example.dell.myappl11assign"
minSdkVersion 16
targetSdkVersion 26
versionCode 1
@@ -20,7 +19,9 @@ android {
}
}
}
-
+repositories {
+ mavenCentral()
+}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
@@ -28,13 +29,13 @@ dependencies {
})
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
compile 'com.android.support:appcompat-v7:26.+'
+ compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha8'
+ compile 'com.android.support:design:26.+'
compile 'com.android.support:recyclerview-v7:26.+'
compile 'com.android.support:cardview-v7:26.+'
- compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha8'
compile 'com.squareup.retrofit2:retrofit:2.3.0'
compile 'com.squareup.retrofit2:converter-gson:2.3.0'
+ compile 'com.squareup.picasso:picasso:2.5.2'
testCompile 'junit:junit:4.12'
}
-repositories {
- mavenCentral()
-}
+
diff --git a/app/proguard-rules.pro b/MyAppL11Assign/app/proguard-rules.pro
similarity index 91%
rename from app/proguard-rules.pro
rename to MyAppL11Assign/app/proguard-rules.pro
index 36a7b84..a70d8ed 100644
--- a/app/proguard-rules.pro
+++ b/MyAppL11Assign/app/proguard-rules.pro
@@ -1,6 +1,6 @@
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
-# in /Users/championswimmer/Library/Android/sdk/tools/proguard/proguard-android.txt
+# in C:\Users\dell\AppData\Local\Android\Sdk/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.
#
diff --git a/app/src/androidTest/java/com/codingblocks/restapiretrofitjson/ExampleInstrumentedTest.java b/MyAppL11Assign/app/src/androidTest/java/com/example/dell/myappl11assign/ExampleInstrumentedTest.java
similarity index 82%
rename from app/src/androidTest/java/com/codingblocks/restapiretrofitjson/ExampleInstrumentedTest.java
rename to MyAppL11Assign/app/src/androidTest/java/com/example/dell/myappl11assign/ExampleInstrumentedTest.java
index 1e14941..c0e203e 100644
--- a/app/src/androidTest/java/com/codingblocks/restapiretrofitjson/ExampleInstrumentedTest.java
+++ b/MyAppL11Assign/app/src/androidTest/java/com/example/dell/myappl11assign/ExampleInstrumentedTest.java
@@ -1,4 +1,4 @@
-package com.codingblocks.restapiretrofitjson;
+package com.example.dell.myappl11assign;
import android.content.Context;
import android.support.test.InstrumentationRegistry;
@@ -21,6 +21,6 @@ public void useAppContext() throws Exception {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getTargetContext();
- assertEquals("com.codingblocks.restapiretrofitjson", appContext.getPackageName());
+ assertEquals("com.example.dell.myappl11assign", appContext.getPackageName());
}
}
diff --git a/app/src/main/AndroidManifest.xml b/MyAppL11Assign/app/src/main/AndroidManifest.xml
similarity index 63%
rename from app/src/main/AndroidManifest.xml
rename to MyAppL11Assign/app/src/main/AndroidManifest.xml
index 363fe63..04a1fbc 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/MyAppL11Assign/app/src/main/AndroidManifest.xml
@@ -1,6 +1,6 @@
+ package="com.example.dell.myappl11assign">
@@ -11,9 +11,6 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
-
-
-
@@ -21,7 +18,13 @@
-
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/AlbumsActivity.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/AlbumsActivity.java
new file mode 100644
index 0000000..c715d6d
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/AlbumsActivity.java
@@ -0,0 +1,68 @@
+package com.example.dell.myappl11assign;
+
+import android.content.Intent;
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+
+import com.example.dell.myappl11assign.adapters.AlbumAdapter;
+import com.example.dell.myappl11assign.api.AlbumsAPI;
+import com.example.dell.myappl11assign.interfaces.OnItemClickListener;
+import com.example.dell.myappl11assign.models.Album;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.Callback;
+import retrofit2.Response;
+import retrofit2.Retrofit;
+import retrofit2.converter.gson.GsonConverterFactory;
+
+public class AlbumsActivity extends AppCompatActivity {
+ public static final String TAG="AlbumsActivity";
+ RecyclerView rvAlbumsList;
+ AlbumAdapter albumAdapter;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_albums);
+
+ rvAlbumsList= (RecyclerView) findViewById(R.id.rvAlbumsList);
+ rvAlbumsList.setLayoutManager(new LinearLayoutManager(this));
+ albumAdapter=new AlbumAdapter(this,new ArrayList());
+ rvAlbumsList.setAdapter(albumAdapter);
+ albumAdapter.setOnItemClickListerner(new OnItemClickListener() {
+ @Override
+ public void onItemClick(int itemId) {
+ Intent photoActIntent=new Intent(AlbumsActivity.this,PhotosActivity.class);
+ photoActIntent.putExtra("albumId",itemId);
+ startActivity(photoActIntent);
+ }
+ });
+
+ Retrofit retrofit = new Retrofit.Builder()
+ .baseUrl("https://jsonplaceholder.typicode.com")
+ .addConverterFactory(
+ GsonConverterFactory.create()
+ )
+ .build();
+
+ AlbumsAPI albumsAPI=retrofit.create(AlbumsAPI.class);
+ Callback>albumCallBack=new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ Log.d(TAG, "onResponse: *****************");
+ albumAdapter.updateAlbums(response.body());
+ }
+
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+
+ }
+ };
+ albumsAPI.getAlbums().enqueue(albumCallBack);
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/CommentsActivity.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/CommentsActivity.java
new file mode 100644
index 0000000..dc1c68d
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/CommentsActivity.java
@@ -0,0 +1,64 @@
+package com.example.dell.myappl11assign;
+
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+
+import com.example.dell.myappl11assign.adapters.CommentAdapter;
+import com.example.dell.myappl11assign.api.CommentsAPI;
+import com.example.dell.myappl11assign.models.Comment;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.Callback;
+import retrofit2.Response;
+import retrofit2.Retrofit;
+import retrofit2.converter.gson.GsonConverterFactory;
+
+public class CommentsActivity extends AppCompatActivity {
+ public static final String TAG="CommentsActivity";
+ RecyclerView rvCommentsList;
+ CommentAdapter commentAdapter;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_comments);
+
+ rvCommentsList= (RecyclerView) findViewById(R.id.rvCommentsList);
+ rvCommentsList.setLayoutManager(new LinearLayoutManager(this));
+ commentAdapter=new CommentAdapter(this,new ArrayList());
+ rvCommentsList.setAdapter(commentAdapter);
+
+ Retrofit retrofit = new Retrofit.Builder()
+ .baseUrl("https://jsonplaceholder.typicode.com")
+ .addConverterFactory(
+ GsonConverterFactory.create()
+ )
+ .build();
+
+ CommentsAPI commentsAPI=retrofit.create(CommentsAPI.class);
+ Callback> commentCallback=new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ Log.d(TAG, "onResponse: ****************");
+ commentAdapter.updateComments(response.body());
+ }
+
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+
+ }
+ };
+ int userIdReceived = getIntent().getIntExtra("UserId",-1);
+ if(userIdReceived!=-1){
+ commentsAPI.getCommentsByPostId(userIdReceived).enqueue(commentCallback);
+ }else{
+ commentsAPI.getComments().enqueue(commentCallback);
+ }
+
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/FullImageActivity.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/FullImageActivity.java
new file mode 100644
index 0000000..6f478ec
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/FullImageActivity.java
@@ -0,0 +1,32 @@
+package com.example.dell.myappl11assign;
+
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.squareup.picasso.Picasso;
+
+public class FullImageActivity extends AppCompatActivity {
+
+ ImageView ivFullImagePhoto;
+ TextView tvFullImageTitle;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_full_image);
+
+ ivFullImagePhoto = (ImageView) findViewById(R.id.ivFullImagePhoto);
+ tvFullImageTitle = (TextView) findViewById(R.id.tvFullImageTitle);
+
+ String photoURLReceived = getIntent().getStringExtra("photoURL");
+ if (photoURLReceived != null) {
+ Picasso.with(FullImageActivity.this).load(photoURLReceived).error(R.drawable.ic_missing).into(ivFullImagePhoto);
+ }
+ String photoTitleReceived=getIntent().getStringExtra("photoTitle");
+ if(photoTitleReceived!=null){
+ tvFullImageTitle.setText(photoTitleReceived);
+ }
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/MainActivity.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/MainActivity.java
new file mode 100644
index 0000000..4f77356
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/MainActivity.java
@@ -0,0 +1,67 @@
+package com.example.dell.myappl11assign;
+
+import android.content.Intent;
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+import android.util.Log;
+import android.view.View;
+import android.widget.Button;
+
+public class MainActivity extends AppCompatActivity {
+ public static final String TAG = "MainActivity";
+ Button btnUsers, btnPosts, btnAlbums, btnTodos;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_main);
+
+ btnUsers = (Button) findViewById(R.id.btnUsers);
+ btnPosts = (Button) findViewById(R.id.btnPosts);
+ btnAlbums = (Button) findViewById(R.id.btnAlbums);
+ btnTodos = (Button) findViewById(R.id.btnTodos);
+
+
+ btnUsers.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Log.d(TAG, "onClick: *************");
+ Intent i = new Intent(MainActivity.this, UsersActivity.class);
+ startActivity(i);
+
+ }
+ });
+
+
+ btnPosts.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Log.d(TAG, "onClick: **************");
+ Intent i = new Intent(MainActivity.this, PostsActivity.class);
+ startActivity(i);
+ }
+ });
+
+
+ btnAlbums.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Log.d(TAG, "onClick: ***************");
+ Intent i = new Intent(MainActivity.this, AlbumsActivity.class);
+ startActivity(i);
+ }
+ });
+
+
+ btnTodos.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Log.d(TAG, "onClick: *****************");
+ Intent i = new Intent(MainActivity.this, TodosActivity.class);
+ startActivity(i);
+ }
+ });
+
+
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/PhotosActivity.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/PhotosActivity.java
new file mode 100644
index 0000000..6d5b9b1
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/PhotosActivity.java
@@ -0,0 +1,75 @@
+package com.example.dell.myappl11assign;
+
+import android.content.Intent;
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+
+import com.example.dell.myappl11assign.adapters.PhotoAdapter;
+import com.example.dell.myappl11assign.api.PhotosAPI;
+import com.example.dell.myappl11assign.interfaces.OnItemClickListener;
+import com.example.dell.myappl11assign.models.Photo;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.Callback;
+import retrofit2.Response;
+import retrofit2.Retrofit;
+import retrofit2.converter.gson.GsonConverterFactory;
+
+public class PhotosActivity extends AppCompatActivity {
+ public static final String TAG = "PhotosActivity";
+ RecyclerView rvPhotoList;
+ PhotoAdapter photoAdapter;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_photos);
+
+ rvPhotoList = (RecyclerView) findViewById(R.id.rvPhotosList);
+ rvPhotoList.setLayoutManager(new LinearLayoutManager(this));
+ photoAdapter = new PhotoAdapter(this, new ArrayList());
+ rvPhotoList.setAdapter(photoAdapter);
+ photoAdapter.setOnItemClickListener(new OnItemClickListener() {
+ @Override
+ public void onItemClick(int itemId) {
+ Intent fullImageActIntent=new Intent(PhotosActivity.this,FullImageActivity.class);
+ fullImageActIntent.putExtra("photoURL",photoAdapter.getPhotos().get(itemId-1).getUrl());
+ fullImageActIntent.putExtra("photoTitle",photoAdapter.getPhotos().get(itemId-1).getTitle());
+ startActivity(fullImageActIntent);
+ }
+ });
+
+ Retrofit retrofit = new Retrofit.Builder()
+ .baseUrl("https://jsonplaceholder.typicode.com")
+ .addConverterFactory(
+ GsonConverterFactory.create()
+ )
+ .build();
+
+ PhotosAPI photosAPI = retrofit.create(PhotosAPI.class);
+ Callback> photoCallback = new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ Log.d(TAG, "onResponse: *************************");
+ photoAdapter.updatePhotos(response.body());
+ }
+
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+
+ }
+ };
+ int albumIdReceived = getIntent().getIntExtra("albumId", -1);
+ if (albumIdReceived != -1) {
+ photosAPI.getPhotosOfId(albumIdReceived).enqueue(photoCallback);
+ } else {
+ photosAPI.getPhotos().enqueue(photoCallback);
+ }
+
+ }
+}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/PostsActivity.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/PostsActivity.java
similarity index 61%
rename from app/src/main/java/com/codingblocks/restapiretrofitjson/activities/PostsActivity.java
rename to MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/PostsActivity.java
index b244f79..2b1bb71 100644
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/PostsActivity.java
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/PostsActivity.java
@@ -1,31 +1,27 @@
-package com.codingblocks.restapiretrofitjson.activities;
+package com.example.dell.myappl11assign;
import android.content.Intent;
-import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
-import android.view.View;
-import com.codingblocks.restapiretrofitjson.MainActivity;
-import com.codingblocks.restapiretrofitjson.R;
-import com.codingblocks.restapiretrofitjson.adapters.PostAdapter;
-import com.codingblocks.restapiretrofitjson.api.API;
-import com.codingblocks.restapiretrofitjson.api.PostsAPI;
-import com.codingblocks.restapiretrofitjson.interfaces.OnItemClickListener;
-import com.codingblocks.restapiretrofitjson.models.Post;
+import com.example.dell.myappl11assign.adapters.PostAdapter;
+import com.example.dell.myappl11assign.api.PostsAPI;
+import com.example.dell.myappl11assign.interfaces.OnItemClickListener;
+import com.example.dell.myappl11assign.models.Post;
import java.util.ArrayList;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
+import retrofit2.Retrofit;
+import retrofit2.converter.gson.GsonConverterFactory;
public class PostsActivity extends AppCompatActivity {
-
- public static final String TAG = "PA";
-
+ public static final String TAG = "PostsActivity";
RecyclerView rvPostsList;
PostAdapter postAdapter;
@@ -40,20 +36,25 @@ protected void onCreate(Bundle savedInstanceState) {
rvPostsList.setAdapter(postAdapter);
postAdapter.setOnItemClickListener(new OnItemClickListener() {
@Override
- public void onItemClick(int itemId, View view) {
- Intent i = new Intent(PostsActivity.this, CommentsActivity.class);
- i.putExtra("postId", itemId);
- startActivity(i);
+ public void onItemClick(int itemId) {
+ Intent commActIntent = new Intent(PostsActivity.this,CommentsActivity.class);
+ commActIntent.putExtra("userId",itemId);
+ startActivity(commActIntent);
}
});
+ Retrofit retrofit = new Retrofit.Builder()
+ .baseUrl("https://jsonplaceholder.typicode.com")
+ .addConverterFactory(
+ GsonConverterFactory.create()
+ )
+ .build();
- PostsAPI postsAPI = API.getInstance().getPostsAPI();
+ PostsAPI postsAPI = retrofit.create(PostsAPI.class);
Callback> postCallback = new Callback>() {
-
@Override
public void onResponse(Call> call, Response> response) {
- Log.d(TAG, "onResponse: ");
+ Log.d(TAG, "onResponse: ****************");
postAdapter.updatePosts(response.body());
}
@@ -68,6 +69,5 @@ public void onFailure(Call> call, Throwable t) {
} else {
postsAPI.getPosts().enqueue(postCallback);
}
-
}
}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/TodosActivity.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/TodosActivity.java
new file mode 100644
index 0000000..0081670
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/TodosActivity.java
@@ -0,0 +1,64 @@
+package com.example.dell.myappl11assign;
+
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+
+import com.example.dell.myappl11assign.adapters.TodoAdapter;
+import com.example.dell.myappl11assign.api.TodosAPI;
+import com.example.dell.myappl11assign.models.Todo;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.Callback;
+import retrofit2.Response;
+import retrofit2.Retrofit;
+import retrofit2.converter.gson.GsonConverterFactory;
+
+public class TodosActivity extends AppCompatActivity {
+ public static final String TAG="TodosActivity";
+ RecyclerView rvTodosList;
+ TodoAdapter todoAdapter;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_todos);
+
+ rvTodosList= (RecyclerView) findViewById(R.id.rvTodosList);
+ rvTodosList.setLayoutManager(new LinearLayoutManager(this));
+ todoAdapter=new TodoAdapter(this,new ArrayList());
+ rvTodosList.setAdapter(todoAdapter);
+
+ Retrofit retrofit = new Retrofit.Builder()
+ .baseUrl("https://jsonplaceholder.typicode.com")
+ .addConverterFactory(
+ GsonConverterFactory.create()
+ )
+ .build();
+
+ TodosAPI todosAPI = retrofit.create(TodosAPI.class);
+ final Callback>todoCallBack=new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ Log.d(TAG, "onResponse: ********************");
+ todoAdapter.updateTodos(response.body());
+ }
+
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+
+ }
+ };
+ int userIdReceived=getIntent().getIntExtra("userId",-1);
+ if(userIdReceived!=-1){
+ todosAPI.getTodosByUserId(userIdReceived).enqueue(todoCallBack);
+ }else{
+ todosAPI.getTodos().enqueue(todoCallBack);
+ }
+
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/UsersActivity.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/UsersActivity.java
new file mode 100644
index 0000000..c2215a4
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/UsersActivity.java
@@ -0,0 +1,62 @@
+package com.example.dell.myappl11assign;
+
+import android.content.Intent;
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import android.view.View;
+import android.widget.Button;
+import android.widget.Toast;
+
+import com.example.dell.myappl11assign.adapters.UserAdapter;
+import com.example.dell.myappl11assign.api.UsersAPI;
+import com.example.dell.myappl11assign.models.User;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.Callback;
+import retrofit2.Response;
+import retrofit2.Retrofit;
+import retrofit2.converter.gson.GsonConverterFactory;
+
+public class UsersActivity extends AppCompatActivity {
+ public static final String TAG = "UsersActivity";
+ RecyclerView rvUsersList;
+ UserAdapter userAdapter;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_users);
+ Log.d(TAG, "onCreate: **************");
+
+ rvUsersList = (RecyclerView) findViewById(R.id.rvUsersList);
+ rvUsersList.setLayoutManager(new LinearLayoutManager(this));
+ userAdapter = new UserAdapter(this, new ArrayList());
+ rvUsersList.setAdapter(userAdapter);
+
+ Retrofit retrofit = new Retrofit.Builder()
+ .baseUrl("https://jsonplaceholder.typicode.com")
+ .addConverterFactory(
+ GsonConverterFactory.create()
+ )
+ .build();
+
+ final UsersAPI usersAPI = retrofit.create(UsersAPI.class);
+ usersAPI.getUsers().enqueue(new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ userAdapter.updateUsers(response.body());
+ }
+
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+
+ }
+ });
+
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/AlbumAdapter.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/AlbumAdapter.java
new file mode 100644
index 0000000..80243b8
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/AlbumAdapter.java
@@ -0,0 +1,78 @@
+package com.example.dell.myappl11assign.adapters;
+
+import android.content.Context;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+
+import com.example.dell.myappl11assign.R;
+import com.example.dell.myappl11assign.interfaces.OnItemClickListener;
+import com.example.dell.myappl11assign.models.Album;
+
+import java.util.ArrayList;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public class AlbumAdapter extends RecyclerView.Adapter {
+ public static final String TAG = "AlbumAdapter";
+ private Context context;
+ private ArrayList albums;
+ private OnItemClickListener onItemClickListerner;
+
+ public void setOnItemClickListerner(OnItemClickListener onItemClickListerner) {
+ this.onItemClickListerner = onItemClickListerner;
+ }
+
+ public AlbumAdapter(Context context, ArrayList albums) {
+ this.context = context;
+ this.albums = albums;
+ }
+
+ public void updateAlbums(ArrayList albums) {
+ this.albums = albums;
+ notifyDataSetChanged();
+ }
+
+ @Override
+ public AlbumViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+ LayoutInflater li = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ View itemView = li.inflate(R.layout.list_item_album,parent,false);
+ return new AlbumViewHolder(itemView);
+ }
+
+ @Override
+ public void onBindViewHolder(AlbumViewHolder holder, int position) {
+ Log.d(TAG, "onBindViewHolder: ***************");
+ final Album thisAlbum=albums.get(position);
+ holder.tvAlbumTitle.setText(thisAlbum.getTitle());
+ holder.thisView.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if(onItemClickListerner!=null){
+ onItemClickListerner.onItemClick(thisAlbum.getId());
+ }
+ }
+ });
+
+ }
+
+ @Override
+ public int getItemCount() {
+ return albums.size();
+ }
+
+ class AlbumViewHolder extends RecyclerView.ViewHolder {
+ TextView tvAlbumTitle;
+ View thisView;
+ public AlbumViewHolder(View itemView) {
+ super(itemView);
+ thisView=itemView;
+ tvAlbumTitle=(TextView)itemView.findViewById(R.id.tvAlbumTitle);
+ }
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/CommentAdapter.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/CommentAdapter.java
new file mode 100644
index 0000000..c8d64f0
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/CommentAdapter.java
@@ -0,0 +1,64 @@
+package com.example.dell.myappl11assign.adapters;
+
+import android.content.Context;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+
+import com.example.dell.myappl11assign.R;
+import com.example.dell.myappl11assign.models.Comment;
+
+import java.util.ArrayList;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public class CommentAdapter extends RecyclerView.Adapter {
+ public static final String TAG = "CommentAdapter";
+ private Context context;
+ private ArrayList comments;
+
+ public CommentAdapter(Context context, ArrayList comments) {
+ this.context = context;
+ this.comments = comments;
+ }
+
+ public void updateComments(ArrayList comments) {
+ this.comments = comments;
+ notifyDataSetChanged();
+ }
+
+ @Override
+ public CommentViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+ LayoutInflater li = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ View itemView = li.inflate(R.layout.list_item_comment, parent, false);
+ return new CommentViewHolder(itemView);
+ }
+
+ @Override
+ public void onBindViewHolder(CommentViewHolder holder, int position) {
+ Comment thisComment = comments.get(position);
+ holder.tvCommentBody.setText(thisComment.getBody());
+ holder.tvCommentEmail.setText(thisComment.getEmail());
+ holder.tvCommentName.setText(thisComment.getName());
+ }
+
+ @Override
+ public int getItemCount() {
+ return comments.size();
+ }
+
+ class CommentViewHolder extends RecyclerView.ViewHolder {
+ TextView tvCommentBody, tvCommentName, tvCommentEmail;
+
+ public CommentViewHolder(View itemView) {
+ super(itemView);
+ tvCommentBody = (TextView) itemView.findViewById(R.id.tvCommentBody);
+ tvCommentEmail = (TextView) itemView.findViewById(R.id.tvCommentEmail);
+ tvCommentName = (TextView) itemView.findViewById(R.id.tvCommentName);
+ }
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/PhotoAdapter.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/PhotoAdapter.java
new file mode 100644
index 0000000..e80e3e8
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/PhotoAdapter.java
@@ -0,0 +1,94 @@
+package com.example.dell.myappl11assign.adapters;
+
+import android.content.Context;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.example.dell.myappl11assign.R;
+import com.example.dell.myappl11assign.interfaces.OnItemClickListener;
+import com.example.dell.myappl11assign.models.Photo;
+import com.squareup.picasso.Picasso;
+
+import java.util.ArrayList;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public class PhotoAdapter extends RecyclerView.Adapter {
+ public static final String TAG = "PhotoAdapter";
+ private Context context;
+ private ArrayList photos;
+ private OnItemClickListener onItemClickListener;
+
+ public ArrayList getPhotos() {
+ return photos;
+ }
+
+ public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
+ this.onItemClickListener = onItemClickListener;
+ }
+
+ public PhotoAdapter(Context context, ArrayList photos) {
+ this.context = context;
+ this.photos = photos;
+ }
+
+ public void updatePhotos(ArrayList photos) {
+ this.photos = photos;
+ notifyDataSetChanged();
+ }
+
+ @Override
+ public PhotoViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+ LayoutInflater li = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ View itemView = li.inflate(R.layout.list_item_photo, parent, false);
+ return new PhotoViewHolder(itemView);
+ }
+
+ @Override
+ public void onBindViewHolder(PhotoViewHolder holder, int position) {
+ Log.d(TAG, "onBindViewHolder: **************");
+ final Photo thisPhoto = photos.get(position);
+ String imageURL=thisPhoto.getThumbnailUrl();
+ Log.d(TAG, "onBindViewHolder: ************** "+thisPhoto.getUrl());
+ Log.d(TAG, "onBindViewHolder: ************** "+thisPhoto.getThumbnailUrl());
+ if(imageURL!=null){
+ Picasso.with(context).load(imageURL).error(R.drawable.ic_missing).into(holder.ivPhotoThumbnail);
+ }
+ //Picasso.with(context).load(thisPhoto.getThumbnaulUrl()).into(holder.ivPhotoThumbnail);
+ holder.tvPhotoTitle.setText(thisPhoto.getTitle());
+
+ holder.thisView.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if(onItemClickListener!=null){
+ onItemClickListener.onItemClick(thisPhoto.getId());
+ }
+ }
+ });
+
+ }
+
+ @Override
+ public int getItemCount() {
+ return photos.size();
+ }
+
+ class PhotoViewHolder extends RecyclerView.ViewHolder {
+ ImageView ivPhotoThumbnail;
+ TextView tvPhotoTitle;
+ View thisView;
+ public PhotoViewHolder(View itemView) {
+ super(itemView);
+ thisView=itemView;
+ ivPhotoThumbnail = (ImageView) itemView.findViewById(R.id.ivPhotoThumbnail);
+ tvPhotoTitle = (TextView) itemView.findViewById(R.id.tvPhotoTitle);
+ }
+ }
+}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/PostAdapter.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/PostAdapter.java
similarity index 59%
rename from app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/PostAdapter.java
rename to MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/PostAdapter.java
index 5a6fdef..59dd641 100644
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/PostAdapter.java
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/PostAdapter.java
@@ -1,4 +1,4 @@
-package com.codingblocks.restapiretrofitjson.adapters;
+package com.example.dell.myappl11assign.adapters;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
@@ -8,24 +8,20 @@
import android.view.ViewGroup;
import android.widget.TextView;
-import com.codingblocks.restapiretrofitjson.R;
-import com.codingblocks.restapiretrofitjson.interfaces.OnItemClickListener;
-import com.codingblocks.restapiretrofitjson.models.Post;
+import com.example.dell.myappl11assign.R;
+import com.example.dell.myappl11assign.interfaces.OnItemClickListener;
+import com.example.dell.myappl11assign.models.Post;
import java.util.ArrayList;
/**
- * Created by championswimmer on 29/06/17.
+ * Created by dell on 01-07-2017.
*/
-public class PostAdapter
- extends RecyclerView.Adapter {
-
- public static final String TAG = "PADPTR";
-
+public class PostAdapter extends RecyclerView.Adapter {
+ public static final String TAG = "PostAdapter";
private Context context;
private ArrayList posts;
-
private OnItemClickListener onItemClickListener;
public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
@@ -38,36 +34,33 @@ public PostAdapter(Context context, ArrayList posts) {
}
public void updatePosts(ArrayList posts) {
- this.posts = posts;
+ this.posts=posts;
notifyDataSetChanged();
}
@Override
public PostViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
- Log.d(TAG, "onCreateViewHolder: ");
- LayoutInflater li =
- (LayoutInflater) context.getSystemService(
- Context.LAYOUT_INFLATER_SERVICE);
- View itemView = li.inflate(R.layout.list_item_post, parent, false);
-
+ Log.d(TAG, "onCreateViewHolder: ****************");
+ LayoutInflater li = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ View itemView=li.inflate(R.layout.list_item_post,parent,false);
return new PostViewHolder(itemView);
}
@Override
public void onBindViewHolder(PostViewHolder holder, int position) {
- Log.d(TAG, "onBindViewHolder: ");
- final Post thisPost = posts.get(position);
-
+ Log.d(TAG, "onBindViewHolder: *******************");
+ final Post thisPost=posts.get(position);
holder.tvPostTitle.setText(thisPost.getTitle());
holder.tvPostBody.setText(thisPost.getBody());
holder.thisView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- if (onItemClickListener != null) {
- onItemClickListener.onItemClick(thisPost.getId(), view);
+ if(onItemClickListener!=null){
+ onItemClickListener.onItemClick(thisPost.getId());
}
}
});
+
}
@Override
@@ -76,15 +69,13 @@ public int getItemCount() {
}
class PostViewHolder extends RecyclerView.ViewHolder {
-
- TextView tvPostBody, tvPostTitle;
+ TextView tvPostTitle,tvPostBody;
View thisView;
-
public PostViewHolder(View itemView) {
super(itemView);
- thisView = itemView;
- tvPostBody = (TextView) itemView.findViewById(R.id.tvPostBody);
- tvPostTitle = (TextView) itemView.findViewById(R.id.tvPostTitle);
+ thisView=itemView;
+ tvPostTitle=(TextView) itemView.findViewById(R.id.tvPostTitle);
+ tvPostBody=(TextView) itemView.findViewById(R.id.tvPostBody);
}
}
}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/TodoAdapter.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/TodoAdapter.java
new file mode 100644
index 0000000..6fe8742
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/TodoAdapter.java
@@ -0,0 +1,66 @@
+package com.example.dell.myappl11assign.adapters;
+
+import android.content.Context;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.CheckBox;
+import android.widget.TextView;
+
+import com.example.dell.myappl11assign.R;
+import com.example.dell.myappl11assign.models.Todo;
+
+import java.util.ArrayList;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public class TodoAdapter extends RecyclerView.Adapter {
+ public static final String TAG="TodoAdapter";
+ private Context context;
+ private ArrayList todos;
+
+ public TodoAdapter(Context context, ArrayList todos) {
+ this.context = context;
+ this.todos = todos;
+ }
+
+ public void updateTodos(ArrayListtodos){
+ this.todos=todos;
+ notifyDataSetChanged();
+ }
+ @Override
+ public TodoViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+ LayoutInflater li = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ View itemView=li.inflate(R.layout.list_item_todo,parent,false);
+ return new TodoViewHolder(itemView);
+ }
+
+ @Override
+ public void onBindViewHolder(TodoViewHolder holder, int position) {
+ Log.d(TAG, "onBindViewHolder: *********************");
+ Todo thisTodo=todos.get(position);
+ holder.cbTodoCompleted.setChecked(thisTodo.getCompleted());
+ holder.tvTodoTitle.setText(thisTodo.getTitle());
+ }
+
+ @Override
+ public int getItemCount() {
+ return todos.size();
+ }
+
+ class TodoViewHolder extends RecyclerView.ViewHolder{
+ CheckBox cbTodoCompleted;
+ TextView tvTodoTitle;
+
+ public TodoViewHolder(View itemView) {
+ super(itemView);
+
+ cbTodoCompleted=(CheckBox) itemView.findViewById(R.id.cbTodoCompleted);
+ tvTodoTitle=(TextView) itemView.findViewById(R.id.tvTodoTitle);
+ }
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/UserAdapter.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/UserAdapter.java
new file mode 100644
index 0000000..94c67de
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/adapters/UserAdapter.java
@@ -0,0 +1,105 @@
+package com.example.dell.myappl11assign.adapters;
+
+import android.content.Context;
+import android.content.Intent;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.AdapterView;
+import android.widget.Button;
+import android.widget.TextView;
+
+import com.example.dell.myappl11assign.PostsActivity;
+import com.example.dell.myappl11assign.R;
+import com.example.dell.myappl11assign.TodosActivity;
+import com.example.dell.myappl11assign.UsersActivity;
+import com.example.dell.myappl11assign.interfaces.OnItemClickListener;
+import com.example.dell.myappl11assign.models.User;
+
+import java.util.ArrayList;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public class UserAdapter extends RecyclerView.Adapter {
+ public static final String TAG = "UserAdapter";
+ private Context context;
+ private ArrayList users;
+ private OnItemClickListener onItemClickListener;
+
+ public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
+ this.onItemClickListener = onItemClickListener;
+ }
+
+ public UserAdapter(Context context, ArrayList users) {
+ this.context = context;
+ this.users = users;
+ }
+
+ public void updateUsers(ArrayList newUserList) {
+ this.users = newUserList;
+ notifyDataSetChanged();
+ }
+
+ @Override
+ public UserViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+ LayoutInflater li = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ View itemView = li.inflate(R.layout.list_item_user, parent, false);
+ return new UserViewHolder(itemView);
+ }
+
+ @Override
+ public void onBindViewHolder(UserViewHolder holder, int position) {
+ final User thisUser = users.get(position);
+ holder.tvUserUserName.setText(thisUser.getUsername());
+ holder.tvUserName.setText(thisUser.getName());
+ holder.tvUserPhone.setText(thisUser.getPhone());
+ holder.tvUserEmail.setText(thisUser.getEmail());
+ holder.btnPosts.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Log.d(TAG, "onClick: ************** Reaching POST");
+
+ Intent postActIntent = new Intent(view.getContext(),PostsActivity.class);
+ postActIntent.putExtra("userId", thisUser.getId());
+ view.getContext().startActivity(postActIntent);
+ }
+ });
+ holder.btnTodos.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ Log.d(TAG, "onClick: ***************** Reaching TODO");
+
+ Intent todoActIntent=new Intent(view.getContext(), TodosActivity.class);
+ todoActIntent.putExtra("userId",thisUser.getId());
+ view.getContext().startActivity(todoActIntent);
+ }
+ });
+
+ }
+
+ @Override
+ public int getItemCount() {
+ return users.size();
+ }
+
+ class UserViewHolder extends RecyclerView.ViewHolder {
+ TextView tvUserUserName, tvUserName, tvUserPhone, tvUserEmail;
+ Button btnPosts, btnTodos;
+ View thisView;
+
+ public UserViewHolder(View itemView) {
+ super(itemView);
+ thisView = itemView;
+ tvUserUserName = (TextView) itemView.findViewById(R.id.tvUserUsername);
+ tvUserName = (TextView) itemView.findViewById(R.id.tvUserName);
+ tvUserPhone = (TextView) itemView.findViewById(R.id.tvUserPhone);
+ tvUserEmail = (TextView) itemView.findViewById(R.id.tvUserEmail);
+ btnPosts = (Button) itemView.findViewById(R.id.btnPosts);
+ btnTodos = (Button) itemView.findViewById(R.id.btnTodos);
+ }
+ }
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/AlbumsAPI.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/AlbumsAPI.java
new file mode 100644
index 0000000..24e586f
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/AlbumsAPI.java
@@ -0,0 +1,26 @@
+package com.example.dell.myappl11assign.api;
+
+import com.example.dell.myappl11assign.models.Album;
+import com.example.dell.myappl11assign.models.Photo;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.http.GET;
+import retrofit2.http.Path;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public interface AlbumsAPI {
+ @GET("/albums")
+ Call> getAlbums();
+
+ //interface PostsAPI{
+ @GET("/albums/{id}/photos")
+ Call>getPhotosOfId(
+ @Path("id") int id
+ );
+ //}
+}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/CommentsAPI.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/CommentsAPI.java
similarity index 69%
rename from app/src/main/java/com/codingblocks/restapiretrofitjson/api/CommentsAPI.java
rename to MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/CommentsAPI.java
index 3f23b0f..652757d 100644
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/CommentsAPI.java
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/CommentsAPI.java
@@ -1,6 +1,6 @@
-package com.codingblocks.restapiretrofitjson.api;
+package com.example.dell.myappl11assign.api;
-import com.codingblocks.restapiretrofitjson.models.Comment;
+import com.example.dell.myappl11assign.models.Comment;
import java.util.ArrayList;
@@ -9,7 +9,7 @@
import retrofit2.http.Query;
/**
- * Created by championswimmer on 29/06/17.
+ * Created by dell on 01-07-2017.
*/
public interface CommentsAPI {
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/PhotosAPI.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/PhotosAPI.java
new file mode 100644
index 0000000..45c3e1e
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/PhotosAPI.java
@@ -0,0 +1,25 @@
+package com.example.dell.myappl11assign.api;
+
+import com.example.dell.myappl11assign.models.Photo;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.http.GET;
+import retrofit2.http.Path;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public interface PhotosAPI {
+
+ @GET("/photos")
+ Call>getPhotos();
+
+ @GET("/albums/{id}/photos")
+ Call>getPhotosOfId(
+ @Path("id") int id
+ );
+
+}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/PostsAPI.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/PostsAPI.java
similarity index 56%
rename from app/src/main/java/com/codingblocks/restapiretrofitjson/api/PostsAPI.java
rename to MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/PostsAPI.java
index e9a48a9..f7b4836 100644
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/PostsAPI.java
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/PostsAPI.java
@@ -1,7 +1,7 @@
-package com.codingblocks.restapiretrofitjson.api;
+package com.example.dell.myappl11assign.api;
-import com.codingblocks.restapiretrofitjson.models.Comment;
-import com.codingblocks.restapiretrofitjson.models.Post;
+import com.example.dell.myappl11assign.models.Comment;
+import com.example.dell.myappl11assign.models.Post;
import java.util.ArrayList;
@@ -11,7 +11,7 @@
import retrofit2.http.Query;
/**
- * Created by championswimmer on 29/06/17.
+ * Created by dell on 01-07-2017.
*/
public interface PostsAPI {
@@ -20,21 +20,20 @@ public interface PostsAPI {
Call> getPosts();
@GET("/posts/{id}")
- Call getPostById(
+ CallgetPostById(
@Path("id") int id
);
@GET("/posts")
- Call> getPostsByUserId(
+ Call>getPostsByUserId(
@Query("userId") int userId
);
- interface CommentsAPI {
-
+ interface CommentsAPI{
@GET("/posts/{postId}/comments")
- Call> getCommentsOfPostId(
+ Call>getCommentsOfPostId(
@Path("postId") int postId
);
-
}
+
}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/TodosAPI.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/TodosAPI.java
new file mode 100644
index 0000000..7ee09e5
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/TodosAPI.java
@@ -0,0 +1,25 @@
+package com.example.dell.myappl11assign.api;
+
+import com.example.dell.myappl11assign.models.Todo;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.http.GET;
+import retrofit2.http.Query;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public interface TodosAPI {
+
+ @GET("/todos")
+ Call>getTodos();
+
+ @GET("/todos")
+ Call>getTodosByUserId(
+ @Query("userId") int userId
+ );
+
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/UsersAPI.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/UsersAPI.java
new file mode 100644
index 0000000..f8d5dae
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/api/UsersAPI.java
@@ -0,0 +1,18 @@
+package com.example.dell.myappl11assign.api;
+
+import com.example.dell.myappl11assign.models.User;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.http.GET;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public interface UsersAPI {
+
+ @GET("/users")
+ Call> getUsers ();
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/interfaces/OnItemClickListener.java b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/interfaces/OnItemClickListener.java
new file mode 100644
index 0000000..2b7617e
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/interfaces/OnItemClickListener.java
@@ -0,0 +1,9 @@
+package com.example.dell.myappl11assign.interfaces;
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+
+public interface OnItemClickListener {
+ void onItemClick(int itemId);
+}
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Album.kt b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Album.kt
new file mode 100644
index 0000000..e8320b0
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Album.kt
@@ -0,0 +1,10 @@
+package com.example.dell.myappl11assign.models
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+data class Album (
+ val userId: Int,
+ val id: Int,
+ val title: String
+)
\ No newline at end of file
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/models/Comment.kt b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Comment.kt
similarity index 53%
rename from app/src/main/java/com/codingblocks/restapiretrofitjson/models/Comment.kt
rename to MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Comment.kt
index 932fdd9..ebf7dcc 100644
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/models/Comment.kt
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Comment.kt
@@ -1,9 +1,9 @@
-package com.codingblocks.restapiretrofitjson.models
+package com.example.dell.myappl11assign.models
/**
- * Created by championswimmer on 29/06/17.
+ * Created by dell on 01-07-2017.
*/
-data class Comment(
+data class Comment (
val postId: Int,
val id: Int,
val name: String,
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Photo.kt b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Photo.kt
new file mode 100644
index 0000000..0d8801b
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Photo.kt
@@ -0,0 +1,12 @@
+package com.example.dell.myappl11assign.models
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+data class Photo(
+ val albumId: Int,
+ val id: Int,
+ val title: String,
+ val url: String,
+ val thumbnailUrl: String
+)
\ No newline at end of file
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/models/Post.kt b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Post.kt
similarity index 55%
rename from app/src/main/java/com/codingblocks/restapiretrofitjson/models/Post.kt
rename to MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Post.kt
index f8a8746..6386d3f 100644
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/models/Post.kt
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Post.kt
@@ -1,12 +1,11 @@
-package com.codingblocks.restapiretrofitjson.models
+package com.example.dell.myappl11assign.models
/**
- * Created by championswimmer on 29/06/17.
+ * Created by dell on 01-07-2017.
*/
-
data class Post(
val userId: Int,
val id: Int,
val title: String,
val body: String
-)
+)
\ No newline at end of file
diff --git a/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Todo.kt b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Todo.kt
new file mode 100644
index 0000000..ca3f504
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/Todo.kt
@@ -0,0 +1,11 @@
+package com.example.dell.myappl11assign.models
+
+/**
+ * Created by dell on 01-07-2017.
+ */
+data class Todo(
+ val userId: Int,
+ val id: Int,
+ val title: String,
+ val completed: Boolean
+)
\ No newline at end of file
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/models/User.kt b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/User.kt
similarity index 62%
rename from app/src/main/java/com/codingblocks/restapiretrofitjson/models/User.kt
rename to MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/User.kt
index d8b192e..68cbc94 100644
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/models/User.kt
+++ b/MyAppL11Assign/app/src/main/java/com/example/dell/myappl11assign/models/User.kt
@@ -1,12 +1,12 @@
-package com.codingblocks.restapiretrofitjson.models
+package com.example.dell.myappl11assign.models
/**
- * Created by championswimmer on 29/06/17.
+ * Created by dell on 01-07-2017.
*/
data class User(
val id: Int,
- val username: String,
val name: String,
+ val username: String,
val email: String,
val phone: String
)
\ No newline at end of file
diff --git a/MyAppL11Assign/app/src/main/res/drawable/ic_missing.jpg b/MyAppL11Assign/app/src/main/res/drawable/ic_missing.jpg
new file mode 100644
index 0000000..c14dccd
Binary files /dev/null and b/MyAppL11Assign/app/src/main/res/drawable/ic_missing.jpg differ
diff --git a/MyAppL11Assign/app/src/main/res/layout/activity_albums.xml b/MyAppL11Assign/app/src/main/res/layout/activity_albums.xml
new file mode 100644
index 0000000..e858270
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/activity_albums.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/activity_comments.xml b/MyAppL11Assign/app/src/main/res/layout/activity_comments.xml
similarity index 71%
rename from app/src/main/res/layout/activity_comments.xml
rename to MyAppL11Assign/app/src/main/res/layout/activity_comments.xml
index 79b765b..db4280e 100644
--- a/app/src/main/res/layout/activity_comments.xml
+++ b/MyAppL11Assign/app/src/main/res/layout/activity_comments.xml
@@ -4,11 +4,11 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:context="com.codingblocks.restapiretrofitjson.activities.CommentsActivity">
-
+ tools:context="com.example.dell.myappl11assign.CommentsActivity">
+
+
-
+ android:layout_height="match_parent" />
diff --git a/MyAppL11Assign/app/src/main/res/layout/activity_full_image.xml b/MyAppL11Assign/app/src/main/res/layout/activity_full_image.xml
new file mode 100644
index 0000000..0310d37
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/activity_full_image.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MyAppL11Assign/app/src/main/res/layout/activity_main.xml b/MyAppL11Assign/app/src/main/res/layout/activity_main.xml
new file mode 100644
index 0000000..ff72bcf
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/activity_main.xml
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MyAppL11Assign/app/src/main/res/layout/activity_photos.xml b/MyAppL11Assign/app/src/main/res/layout/activity_photos.xml
new file mode 100644
index 0000000..5ff8a1a
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/activity_photos.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/activity_posts.xml b/MyAppL11Assign/app/src/main/res/layout/activity_posts.xml
similarity index 71%
rename from app/src/main/res/layout/activity_posts.xml
rename to MyAppL11Assign/app/src/main/res/layout/activity_posts.xml
index a2f599c..ed7a474 100644
--- a/app/src/main/res/layout/activity_posts.xml
+++ b/MyAppL11Assign/app/src/main/res/layout/activity_posts.xml
@@ -4,13 +4,10 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:context="com.codingblocks.restapiretrofitjson.activities.PostsActivity">
+ tools:context="com.example.dell.myappl11assign.PostsActivity">
-
-
-
+ android:layout_height="match_parent" />
diff --git a/app/src/main/res/layout/activity_todos.xml b/MyAppL11Assign/app/src/main/res/layout/activity_todos.xml
similarity index 71%
rename from app/src/main/res/layout/activity_todos.xml
rename to MyAppL11Assign/app/src/main/res/layout/activity_todos.xml
index a2f6577..1b697fb 100644
--- a/app/src/main/res/layout/activity_todos.xml
+++ b/MyAppL11Assign/app/src/main/res/layout/activity_todos.xml
@@ -4,11 +4,10 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:context="com.codingblocks.restapiretrofitjson.activities.TodosActivity">
+ tools:context="com.example.dell.myappl11assign.TodosActivity">
+
-
-
+ android:layout_height="match_parent" />
diff --git a/MyAppL11Assign/app/src/main/res/layout/activity_users.xml b/MyAppL11Assign/app/src/main/res/layout/activity_users.xml
new file mode 100644
index 0000000..a5605b7
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/activity_users.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
diff --git a/MyAppL11Assign/app/src/main/res/layout/list_item_album.xml b/MyAppL11Assign/app/src/main/res/layout/list_item_album.xml
new file mode 100644
index 0000000..89e69b4
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/list_item_album.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/MyAppL11Assign/app/src/main/res/layout/list_item_comment.xml b/MyAppL11Assign/app/src/main/res/layout/list_item_comment.xml
new file mode 100644
index 0000000..c7adc58
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/list_item_comment.xml
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MyAppL11Assign/app/src/main/res/layout/list_item_photo.xml b/MyAppL11Assign/app/src/main/res/layout/list_item_photo.xml
new file mode 100644
index 0000000..6ed07a9
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/list_item_photo.xml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MyAppL11Assign/app/src/main/res/layout/list_item_post.xml b/MyAppL11Assign/app/src/main/res/layout/list_item_post.xml
new file mode 100644
index 0000000..3e3f8df
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/list_item_post.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MyAppL11Assign/app/src/main/res/layout/list_item_todo.xml b/MyAppL11Assign/app/src/main/res/layout/list_item_todo.xml
new file mode 100644
index 0000000..ac81fc9
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/layout/list_item_todo.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/list_item_user.xml b/MyAppL11Assign/app/src/main/res/layout/list_item_user.xml
similarity index 63%
rename from app/src/main/res/layout/list_item_user.xml
rename to MyAppL11Assign/app/src/main/res/layout/list_item_user.xml
index cd0bb9f..f4332f1 100644
--- a/app/src/main/res/layout/list_item_user.xml
+++ b/MyAppL11Assign/app/src/main/res/layout/list_item_user.xml
@@ -9,63 +9,70 @@
android:layout_height="wrap_content">
-
+ android:layout_height="match_parent"
+ android:orientation="vertical">
+ android:layout_height="wrap_content"
+ android:text="Username"
+ android:textSize="20sp" />
+
+ android:layout_height="wrap_content"
+ android:text="Firstname Lastname"
+ android:textSize="15sp" />
+ android:layout_height="wrap_content"
+ android:orientation="horizontal">
+
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:text="+91xxxxxxx"
+ android:textSize="15sp" />
+
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:text="email@domain.com"
+ android:textSize="15sp" />
+
+ android:layout_height="wrap_content"
+ android:orientation="horizontal">
+
-
+
+
-
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:text="Todos" />
+
-
+
+
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.png b/MyAppL11Assign/app/src/main/res/mipmap-hdpi/ic_launcher.png
similarity index 100%
rename from app/src/main/res/mipmap-hdpi/ic_launcher.png
rename to MyAppL11Assign/app/src/main/res/mipmap-hdpi/ic_launcher.png
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/MyAppL11Assign/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
similarity index 100%
rename from app/src/main/res/mipmap-hdpi/ic_launcher_round.png
rename to MyAppL11Assign/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.png b/MyAppL11Assign/app/src/main/res/mipmap-mdpi/ic_launcher.png
similarity index 100%
rename from app/src/main/res/mipmap-mdpi/ic_launcher.png
rename to MyAppL11Assign/app/src/main/res/mipmap-mdpi/ic_launcher.png
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/MyAppL11Assign/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
similarity index 100%
rename from app/src/main/res/mipmap-mdpi/ic_launcher_round.png
rename to MyAppL11Assign/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/MyAppL11Assign/app/src/main/res/mipmap-xhdpi/ic_launcher.png
similarity index 100%
rename from app/src/main/res/mipmap-xhdpi/ic_launcher.png
rename to MyAppL11Assign/app/src/main/res/mipmap-xhdpi/ic_launcher.png
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/MyAppL11Assign/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
similarity index 100%
rename from app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
rename to MyAppL11Assign/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/MyAppL11Assign/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
similarity index 100%
rename from app/src/main/res/mipmap-xxhdpi/ic_launcher.png
rename to MyAppL11Assign/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/MyAppL11Assign/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
similarity index 100%
rename from app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
rename to MyAppL11Assign/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/MyAppL11Assign/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
similarity index 100%
rename from app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
rename to MyAppL11Assign/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/MyAppL11Assign/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
similarity index 100%
rename from app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
rename to MyAppL11Assign/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
diff --git a/app/src/main/res/values/colors.xml b/MyAppL11Assign/app/src/main/res/values/colors.xml
similarity index 100%
rename from app/src/main/res/values/colors.xml
rename to MyAppL11Assign/app/src/main/res/values/colors.xml
diff --git a/MyAppL11Assign/app/src/main/res/values/dimens.xml b/MyAppL11Assign/app/src/main/res/values/dimens.xml
new file mode 100644
index 0000000..59a0b0c
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/values/dimens.xml
@@ -0,0 +1,3 @@
+
+ 16dp
+
diff --git a/MyAppL11Assign/app/src/main/res/values/strings.xml b/MyAppL11Assign/app/src/main/res/values/strings.xml
new file mode 100644
index 0000000..c91cfe3
--- /dev/null
+++ b/MyAppL11Assign/app/src/main/res/values/strings.xml
@@ -0,0 +1,4 @@
+
+ MyAppL11Assign
+ UserAdapter
+
diff --git a/app/src/main/res/values/styles.xml b/MyAppL11Assign/app/src/main/res/values/styles.xml
similarity index 54%
rename from app/src/main/res/values/styles.xml
rename to MyAppL11Assign/app/src/main/res/values/styles.xml
index 5885930..545b9c6 100644
--- a/app/src/main/res/values/styles.xml
+++ b/MyAppL11Assign/app/src/main/res/values/styles.xml
@@ -8,4 +8,13 @@
- @color/colorAccent
+
+
+
+
+
+
diff --git a/app/src/test/java/com/codingblocks/restapiretrofitjson/ExampleUnitTest.java b/MyAppL11Assign/app/src/test/java/com/example/dell/myappl11assign/ExampleUnitTest.java
similarity index 88%
rename from app/src/test/java/com/codingblocks/restapiretrofitjson/ExampleUnitTest.java
rename to MyAppL11Assign/app/src/test/java/com/example/dell/myappl11assign/ExampleUnitTest.java
index f0ee97f..80647b2 100644
--- a/app/src/test/java/com/codingblocks/restapiretrofitjson/ExampleUnitTest.java
+++ b/MyAppL11Assign/app/src/test/java/com/example/dell/myappl11assign/ExampleUnitTest.java
@@ -1,4 +1,4 @@
-package com.codingblocks.restapiretrofitjson;
+package com.example.dell.myappl11assign;
import org.junit.Test;
diff --git a/build.gradle b/MyAppL11Assign/build.gradle
similarity index 100%
rename from build.gradle
rename to MyAppL11Assign/build.gradle
diff --git a/gradle.properties b/MyAppL11Assign/gradle.properties
similarity index 100%
rename from gradle.properties
rename to MyAppL11Assign/gradle.properties
diff --git a/gradle/wrapper/gradle-wrapper.jar b/MyAppL11Assign/gradle/wrapper/gradle-wrapper.jar
similarity index 100%
rename from gradle/wrapper/gradle-wrapper.jar
rename to MyAppL11Assign/gradle/wrapper/gradle-wrapper.jar
diff --git a/gradle/wrapper/gradle-wrapper.properties b/MyAppL11Assign/gradle/wrapper/gradle-wrapper.properties
similarity index 86%
rename from gradle/wrapper/gradle-wrapper.properties
rename to MyAppL11Assign/gradle/wrapper/gradle-wrapper.properties
index 578b70a..6106620 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/MyAppL11Assign/gradle/wrapper/gradle-wrapper.properties
@@ -1,4 +1,4 @@
-#Thu Jun 29 10:37:46 IST 2017
+#Sat Jul 01 10:27:50 IST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
diff --git a/gradlew b/MyAppL11Assign/gradlew
old mode 100755
new mode 100644
similarity index 100%
rename from gradlew
rename to MyAppL11Assign/gradlew
diff --git a/gradlew.bat b/MyAppL11Assign/gradlew.bat
similarity index 96%
rename from gradlew.bat
rename to MyAppL11Assign/gradlew.bat
index aec9973..8a0b282 100644
--- a/gradlew.bat
+++ b/MyAppL11Assign/gradlew.bat
@@ -1,90 +1,90 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windowz variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-if "%@eval[2+2]" == "4" goto 4NT_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-goto execute
-
-:4NT_args
-@rem Get arguments from the 4NT Shell from JP Software
-set CMD_LINE_ARGS=%$
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windowz variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+if "%@eval[2+2]" == "4" goto 4NT_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+goto execute
+
+:4NT_args
+@rem Get arguments from the 4NT Shell from JP Software
+set CMD_LINE_ARGS=%$
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/settings.gradle b/MyAppL11Assign/settings.gradle
similarity index 100%
rename from settings.gradle
rename to MyAppL11Assign/settings.gradle
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/MainActivity.kt b/app/src/main/java/com/codingblocks/restapiretrofitjson/MainActivity.kt
deleted file mode 100644
index f8ad985..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/MainActivity.kt
+++ /dev/null
@@ -1,32 +0,0 @@
-package com.codingblocks.restapiretrofitjson
-
-import android.content.Intent
-import android.support.v7.app.AppCompatActivity
-import android.os.Bundle
-import com.codingblocks.restapiretrofitjson.activities.PostsActivity
-import com.codingblocks.restapiretrofitjson.activities.TodosActivity
-import com.codingblocks.restapiretrofitjson.activities.UsersActivity
-
-import kotlinx.android.synthetic.main.activity_main.*
-
-class MainActivity : AppCompatActivity() {
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_main)
-
- btnPosts.setOnClickListener({
- startActivity(Intent(this@MainActivity, PostsActivity::class.java))
- })
-
- btnUsers.setOnClickListener({
- startActivity(Intent(this@MainActivity, UsersActivity::class.java))
- })
-
- btnTodos.setOnClickListener({
- startActivity(Intent(this@MainActivity, TodosActivity::class.java))
- })
-
-
- }
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/CommentsActivity.kt b/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/CommentsActivity.kt
deleted file mode 100644
index a5607aa..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/CommentsActivity.kt
+++ /dev/null
@@ -1,43 +0,0 @@
-package com.codingblocks.restapiretrofitjson.activities
-
-import android.support.v7.app.AppCompatActivity
-import android.os.Bundle
-import android.support.v7.widget.LinearLayoutManager
-
-import com.codingblocks.restapiretrofitjson.R
-import com.codingblocks.restapiretrofitjson.adapters.CommentAdapter
-import com.codingblocks.restapiretrofitjson.api.API
-import com.codingblocks.restapiretrofitjson.models.Comment
-import kotlinx.android.synthetic.main.activity_comments.*
-
-import kotlinx.android.synthetic.main.activity_comments.view.*
-import retrofit2.Call
-import retrofit2.Callback
-import retrofit2.Response
-import retrofit2.Retrofit
-
-class CommentsActivity : AppCompatActivity() {
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_comments)
-
- val commentAdapter = CommentAdapter(this, ArrayList())
- rvCommentsList.layoutManager = LinearLayoutManager(this)
- rvCommentsList.adapter = commentAdapter
-
-
-
- API.getInstance().commentsAPI.getCommentsByPostId(intent.getIntExtra("postId", 0))
- .enqueue(object : Callback> {
- override fun onFailure(call: Call>?, t: Throwable?) {
- //
- }
-
- override fun onResponse(call: Call>?, response: Response>?) {
- //
- commentAdapter.updateComments(response!!.body()!!)
- }
- })
- }
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/TodosActivity.kt b/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/TodosActivity.kt
deleted file mode 100644
index b7c7813..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/TodosActivity.kt
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.codingblocks.restapiretrofitjson.activities
-
-import android.support.v7.app.AppCompatActivity
-import android.os.Bundle
-import android.support.v7.widget.LinearLayoutManager
-import android.util.Log
-
-import kotlinx.android.synthetic.main.activity_todos.*
-
-import com.codingblocks.restapiretrofitjson.R
-import com.codingblocks.restapiretrofitjson.adapters.TodoAdapter
-import com.codingblocks.restapiretrofitjson.api.API
-import com.codingblocks.restapiretrofitjson.models.Todo
-import retrofit2.Call
-import retrofit2.Callback
-import retrofit2.Response
-
-class TodosActivity : AppCompatActivity() {
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_todos)
-
- rvTodosList.layoutManager = LinearLayoutManager(this)
- var todoAdapter = TodoAdapter(ArrayList())
- rvTodosList.adapter = todoAdapter
-
- var todoCallback = object: Callback> {
- override fun onFailure(call: Call>?, t: Throwable?) {
- }
-
- override fun onResponse(call: Call>?, response: Response>?) {
- todoAdapter.updateTodos(response!!.body()!!)
- }
-
- }
- var userId = intent.getIntExtra("userId", -1)
- if (userId != -1) {
- API.getInstance().todosAPI.getTodos(userId).enqueue(todoCallback)
-
- } else {
- API.getInstance().todosAPI.getTodos(null).enqueue(todoCallback)
- }
-
-
-
- }
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/UsersActivity.java b/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/UsersActivity.java
deleted file mode 100644
index f70648e..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/activities/UsersActivity.java
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.codingblocks.restapiretrofitjson.activities;
-
-import android.content.Intent;
-import android.os.Bundle;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.view.View;
-import android.widget.Button;
-
-import com.codingblocks.restapiretrofitjson.R;
-import com.codingblocks.restapiretrofitjson.adapters.UserAdapter;
-import com.codingblocks.restapiretrofitjson.api.API;
-import com.codingblocks.restapiretrofitjson.interfaces.OnItemClickListener;
-import com.codingblocks.restapiretrofitjson.models.User;
-
-import java.util.ArrayList;
-
-import retrofit2.Call;
-import retrofit2.Callback;
-import retrofit2.Response;
-
-public class UsersActivity extends AppCompatActivity {
-
- public static final String TAG = "USERS";
-
- RecyclerView rvUserList;
- UserAdapter userAdapter;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_users);
-
- rvUserList = (RecyclerView) findViewById(R.id.rvUserList);
- rvUserList.setLayoutManager(new LinearLayoutManager(this));
- userAdapter = new UserAdapter(this, new ArrayList());
- rvUserList.setAdapter(userAdapter);
- userAdapter.setOnItemClickListener(new OnItemClickListener() {
- @Override
- public void onItemClick(int itemId, View view) {
-
- switch (view.getId()) {
- case R.id.btnUserComments:
- Intent todosActIntent = new Intent(UsersActivity.this,
- TodosActivity.class);
- todosActIntent.putExtra("userId", itemId);
- startActivity(todosActIntent);
- break;
- case R.id.btnUserPosts:
- Intent postActIntent = new Intent(UsersActivity.this,
- PostsActivity.class);
-
- postActIntent.putExtra("userId", itemId);
- startActivity(postActIntent);
- break;
- }
-
-
- }
- });
-
- ((Button) findViewById(R.id.btnAllPosts)).setOnClickListener(
- new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- startActivity(new Intent(
- UsersActivity.this,
- PostsActivity.class
- ));
- }
- }
- );
-
-
- API.getInstance().getUsersAPI().getUsers().enqueue(new Callback>() {
- @Override
- public void onResponse(Call> call,
- Response> response) {
- userAdapter.updateUsers(response.body());
- }
-
- @Override
- public void onFailure(Call> call, Throwable t) {
-
- }
- });
-
- }
-
-
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/CommentAdapter.kt b/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/CommentAdapter.kt
deleted file mode 100644
index 01c70e7..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/CommentAdapter.kt
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.codingblocks.restapiretrofitjson.adapters
-
-import android.content.Context
-import android.support.v7.widget.RecyclerView
-import android.view.LayoutInflater
-import android.view.View
-import android.view.ViewGroup
-import android.widget.TextView
-import com.codingblocks.restapiretrofitjson.R
-import com.codingblocks.restapiretrofitjson.models.Comment
-import kotlinx.android.synthetic.main.list_item_comment.view.*
-import java.util.*
-
-/**
- * Created by championswimmer on 29/06/17.
- */
-
-class CommentAdapter(private val context: Context,
- private var comments: ArrayList)
- : RecyclerView.Adapter() {
-
- fun updateComments(comments: ArrayList) {
- this.comments = comments;
- notifyDataSetChanged();
- }
-
- override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CommentViewHolder {
-
-
- val itemView = LayoutInflater.from(parent.context)
- .inflate(R.layout.list_item_comment, parent, false)
-
- return CommentViewHolder(
- itemView.tvCommentBody,
- itemView.tvCommentName,
- itemView.tvCommentEmail,
- itemView
- )
- }
-
- override fun onBindViewHolder(holder: CommentViewHolder, position: Int) {
-
- val (_, _, name, email, body) = comments[position]
- holder.tvCommentBody.text = body
- holder.tvCommentName.text = name
- holder.tvCommentEmail.text = email
-
- }
-
- override fun getItemCount(): Int {
- return comments.size
- }
-
- class CommentViewHolder(
- public val tvCommentBody: TextView,
- public val tvCommentName: TextView,
- public val tvCommentEmail: TextView,
- itemView: View
- ) : RecyclerView.ViewHolder(itemView) {
-
-
- }
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/TodoAdapter.kt b/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/TodoAdapter.kt
deleted file mode 100644
index c0bb9b6..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/TodoAdapter.kt
+++ /dev/null
@@ -1,53 +0,0 @@
-package com.codingblocks.restapiretrofitjson.adapters
-
-import android.support.v7.widget.RecyclerView
-import android.util.Log
-import android.view.LayoutInflater
-import android.view.View
-import android.view.ViewGroup
-import com.codingblocks.restapiretrofitjson.R
-import com.codingblocks.restapiretrofitjson.models.Todo
-
-import kotlinx.android.synthetic.main.list_item_todo.view.*
-
-/**
- * Created by championswimmer on 02/07/17.
- */
-public class TodoAdapter (
- var todos: ArrayList
-) : RecyclerView.Adapter() {
-
- fun updateTodos(todos: ArrayList) {
- this.todos = todos
- notifyDataSetChanged()
- }
-
- override fun onBindViewHolder(holder: TodoViewHolder?, position: Int) {
-
- holder?.bindTodo(todos[position])
-
- }
-
- override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): TodoViewHolder {
-
- var itemView: View = LayoutInflater.from(parent?.context)
- .inflate(R.layout.list_item_todo, parent, false)
-
- return TodoViewHolder(itemView)
-
- }
-
- override fun getItemCount(): Int {
- Log.d("TODOS", todos.size.toString())
- return todos.size
- }
-
-
- inner class TodoViewHolder(itemView: View?)
- : RecyclerView.ViewHolder(itemView) {
-
- fun bindTodo(todo: Todo) {
- itemView.tvTodoTitle.text = todo.title;
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/UserAdapter.kt b/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/UserAdapter.kt
deleted file mode 100644
index f9c5e79..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/adapters/UserAdapter.kt
+++ /dev/null
@@ -1,73 +0,0 @@
-package com.codingblocks.restapiretrofitjson.adapters
-
-import android.content.Context
-import android.support.v7.widget.RecyclerView
-import android.view.LayoutInflater
-import android.view.View
-import android.view.ViewGroup
-import com.codingblocks.restapiretrofitjson.R
-import com.codingblocks.restapiretrofitjson.interfaces.OnItemClickListener
-import com.codingblocks.restapiretrofitjson.models.User
-import kotlinx.android.synthetic.main.list_item_user.view.*
-import java.util.*
-
-/**
- * Created by championswimmer on 29/06/17.
- */
-
-class UserAdapter(private val context: Context,
- private var users: ArrayList?)
- : RecyclerView.Adapter() {
- internal var onItemClickListener: OnItemClickListener? = null
-
- fun setOnItemClickListener(onItemClickListener: OnItemClickListener) {
- this.onItemClickListener = onItemClickListener
- }
-
- fun updateUsers(newUserList: ArrayList) {
- this.users = newUserList
- notifyDataSetChanged()
- }
-
- override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): UserViewHolder {
- val itemView = LayoutInflater.from(parent.context)
- .inflate(R.layout.list_item_user, parent, false)
-
- return UserViewHolder(itemView)
- }
-
- override fun onBindViewHolder(holder: UserViewHolder, position: Int) {
- holder.bindUser(users!![position])
- }
-
- override fun getItemCount(): Int {
- return users!!.size
- }
-
- inner class UserViewHolder(
- public var thisView: View
- ) : RecyclerView.ViewHolder(thisView) {
-
- fun bindUser(user: User) {
- thisView.tvUserUsername.text = user.username
- thisView.tvUserName.text = user.name
- thisView.tvUserPhone.text = user.phone
- thisView.tvUserEmail.text = user.email
- thisView.btnUserPosts.setOnClickListener {
- onItemClickListener?.onItemClick(user.id,
- itemView.btnUserPosts)
- }
- thisView.btnUserComments.setOnClickListener {
- onItemClickListener?.onItemClick(user.id,
- itemView.btnUserComments)
- }
-
- }
-
- }
-
- companion object {
-
- val TAG = "UA"
- }
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/API.java b/app/src/main/java/com/codingblocks/restapiretrofitjson/api/API.java
deleted file mode 100644
index 771fdc2..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/API.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.codingblocks.restapiretrofitjson.api;
-
-import retrofit2.Retrofit;
-import retrofit2.converter.gson.GsonConverterFactory;
-
-/**
- * Created by championswimmer on 30/06/17.
- */
-
-public class API {
-
- private static API apiInstance;
-
- private PostsAPI postsAPI;
- private UsersAPI usersAPI;
- private CommentsAPI commentsAPI;
- private TodosAPI todosAPI;
-
- public PostsAPI getPostsAPI() {
- return postsAPI;
- }
-
- public UsersAPI getUsersAPI() {
- return usersAPI;
- }
-
- public CommentsAPI getCommentsAPI() {
- return commentsAPI;
- }
-
- public TodosAPI getTodosAPI() {
- return todosAPI;
- }
-
- private API() {
- Retrofit retrofit = new Retrofit.Builder()
- .baseUrl("https://jsonplaceholder.typicode.com")
- .addConverterFactory(
- GsonConverterFactory.create()
- )
- .build();
-
- postsAPI = retrofit.create(PostsAPI.class);
- usersAPI = retrofit.create(UsersAPI.class);
- commentsAPI = retrofit.create(CommentsAPI.class);
- todosAPI = retrofit.create(TodosAPI.class);
- }
-
- public static API getInstance() {
- if (apiInstance == null) {
- apiInstance = new API();
- }
-
- return apiInstance;
- }
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/TodosAPI.java b/app/src/main/java/com/codingblocks/restapiretrofitjson/api/TodosAPI.java
deleted file mode 100644
index fcbe15d..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/TodosAPI.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.codingblocks.restapiretrofitjson.api;
-
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-
-import com.codingblocks.restapiretrofitjson.models.Todo;
-
-import java.util.ArrayList;
-
-import retrofit2.Call;
-import retrofit2.http.GET;
-import retrofit2.http.Query;
-
-/**
- * Created by championswimmer on 02/07/17.
- */
-
-public interface TodosAPI {
-
- @GET("/todos")
- Call> getTodos(
- @Nullable
- @Query("userId") Integer userId
- );
-
-
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/UsersAPI.java b/app/src/main/java/com/codingblocks/restapiretrofitjson/api/UsersAPI.java
deleted file mode 100644
index 190ebaa..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/api/UsersAPI.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.codingblocks.restapiretrofitjson.api;
-
-import com.codingblocks.restapiretrofitjson.models.User;
-
-import java.util.ArrayList;
-
-import retrofit2.Call;
-import retrofit2.http.GET;
-
-/**
- * Created by championswimmer on 29/06/17.
- */
-
-public interface UsersAPI {
-
- @GET("/users")
- Call> getUsers();
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/interfaces/OnItemClickListener.java b/app/src/main/java/com/codingblocks/restapiretrofitjson/interfaces/OnItemClickListener.java
deleted file mode 100644
index 63e6f5c..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/interfaces/OnItemClickListener.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.codingblocks.restapiretrofitjson.interfaces;
-
-import android.view.View;
-
-/**
- * Created by championswimmer on 29/06/17.
- */
-
-public interface OnItemClickListener {
- void onItemClick(int itemId, View view);
-}
diff --git a/app/src/main/java/com/codingblocks/restapiretrofitjson/models/Todo.kt b/app/src/main/java/com/codingblocks/restapiretrofitjson/models/Todo.kt
deleted file mode 100644
index b5a3ff1..0000000
--- a/app/src/main/java/com/codingblocks/restapiretrofitjson/models/Todo.kt
+++ /dev/null
@@ -1,9 +0,0 @@
-package com.codingblocks.restapiretrofitjson.models
-
-/**
- * Created by championswimmer on 02/07/17.
- */
-data class Todo (
- val id: Int, val userId: Int,
- val title: String, val completed: Boolean
-)
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
deleted file mode 100644
index d7e01c2..0000000
--- a/app/src/main/res/layout/activity_main.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/activity_users.xml b/app/src/main/res/layout/activity_users.xml
deleted file mode 100644
index 8d689ef..0000000
--- a/app/src/main/res/layout/activity_users.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/list_item_comment.xml b/app/src/main/res/layout/list_item_comment.xml
deleted file mode 100644
index f4df93b..0000000
--- a/app/src/main/res/layout/list_item_comment.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/list_item_post.xml b/app/src/main/res/layout/list_item_post.xml
deleted file mode 100644
index e6f9cce..0000000
--- a/app/src/main/res/layout/list_item_post.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/list_item_todo.xml b/app/src/main/res/layout/list_item_todo.xml
deleted file mode 100644
index 7dd7af1..0000000
--- a/app/src/main/res/layout/list_item_todo.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
deleted file mode 100644
index 3982c2b..0000000
--- a/app/src/main/res/values/strings.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
- RestAPIRetrofitJSON
-