Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MessageChatListFragment extends Fragment implements ChatRoomManager.ChatRoomManagerListener, ClickInterface {
- private LinearLayout boxEmptyMessage;
- private ChatRoomManager chatRoomManager;
- private MessageChatListRVAdapter adapter;
- private SwipeRefreshLayout swipeRefreshLayout;
- private RecyclerView recyclerView;
- private RelativeLayout loading;
- private TextView tvMesaggeToShow;
- public MessageChatListFragment() {
- // Required empty public constructor
- }
- public static MessageChatListFragment newInstance() {
- MessageChatListFragment fragment = new MessageChatListFragment();
- Bundle args = new Bundle();
- fragment.setArguments(args);
- return fragment;
- }
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- chatRoomManager = ChatRoomManager.getInstance();
- adapter = new MessageChatListRVAdapter(getActivity(), this);
- }
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- // Inflate the layout for this fragment
- View rootView = inflater.inflate(R.layout.fragment_message_list, container, false);
- initInstances(rootView);
- return rootView;
- }
- private void initInstances(View rootView) {
- boxEmptyMessage = (LinearLayout) rootView.findViewById(R.id.boxEmpty);
- loading = (RelativeLayout) rootView.findViewById(R.id.loading);
- swipeRefreshLayout = (SwipeRefreshLayout) rootView.findViewById(R.id.swipeRefreshLayout);
- recyclerView = (RecyclerView) rootView.findViewById(R.id.recyclerView);
- swipeRefreshLayout.setOnRefreshListener(onRefreshListener);
- tvMesaggeToShow=(TextView) rootView.findViewById(R.id.tv_message_to_show);
- adapter.setDataList(chatRoomManager.getAllChatRoom());
- recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
- recyclerView.setAdapter(adapter);
- if (adapter.getItemCount() > 0){
- boxEmptyMessage.setVisibility(View.GONE);
- recyclerView.setVisibility(View.VISIBLE);
- } else {
- boxEmptyMessage.setVisibility(View.VISIBLE);
- recyclerView.setVisibility(View.GONE);
- }
- }
- private void checkInternet() {
- new AsyncTask<Void, Void, String>() {
- @Override
- protected String doInBackground(Void... params) {
- if (isOnline()) {
- return "true";
- } else {
- return "false";
- }
- }
- @Override
- protected void onPostExecute(String s) {
- setProgress(s);
- }
- }.execute();
- }
- private void setProgress(String s) {
- if (s.equals("true")) {
- chatRoomManager.loadChatRoomList(this);
- boxEmptyMessage.setVisibility(View.GONE);
- recyclerView.setVisibility(View.VISIBLE);
- } else if (s.equals("false")) {
- loading.setVisibility(View.GONE);
- tvMesaggeToShow.setText("Click To Reload");
- boxEmptyMessage.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- loading.setVisibility(View.VISIBLE);
- checkInternet();
- // chatRoomManager.loadChatRoomList(MessageChatListFragment.this);
- }
- });
- /* boxEmptyMessage.setVisibility(View.VISIBLE);
- recyclerView.setVisibility(View.GONE);*/
- }
- }
- public boolean isOnline() {
- Runtime runtime = Runtime.getRuntime();
- try {
- Process ipProcess = runtime.exec("/system/bin/ping -c 1 8.8.8.8");
- int exitValue = ipProcess.waitFor();
- return (exitValue == 0);
- } catch (IOException e) {
- e.printStackTrace();
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- return false;
- }
- @Override
- public void onStart() {
- super.onStart();
- loading.setVisibility(View.VISIBLE);
- checkInternet();
- }
- private SwipeRefreshLayout.OnRefreshListener onRefreshListener = new SwipeRefreshLayout.OnRefreshListener() {
- @Override
- public void onRefresh() {
- chatRoomManager.loadChatRoomList(MessageChatListFragment.this);
- }
- };
- @Override
- public void onUpdate() {
- loading.setVisibility(View.GONE);
- adapter.setDataList(chatRoomManager.getAllChatRoom());
- adapter.notifyDataSetChanged();
- swipeRefreshLayout.setRefreshing(false);
- if (adapter.getItemCount() > 0){
- boxEmptyMessage.setVisibility(View.GONE);
- recyclerView.setVisibility(View.VISIBLE);
- } else {
- boxEmptyMessage.setVisibility(View.VISIBLE);
- recyclerView.setVisibility(View.GONE);
- }
- }
- @Override
- public void notHaveChat() {
- loading.setVisibility(View.GONE);
- swipeRefreshLayout.setRefreshing(false);
- }
- @Override
- public void notHaveMessage() {
- boxEmptyMessage.setVisibility(View.VISIBLE);
- recyclerView.setVisibility(View.GONE);
- }
- @Override
- public void onClick(Object object) {
- FirebaseChatRoomModel chatRoom = (FirebaseChatRoomModel) object;
- Intent intent = new Intent(getActivity(), MessageToTeacherActivity.class);
- intent.putExtra("CHAT_ID", chatRoom.getChatId());
- intent.putExtra("TEACHER_ID", chatRoom.getTeacherId());
- ((MainActivity) getActivity()).changeActivity(intent);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement