Android Open Source - DEVIEW2014_AndroidApp_Demo Cycle Controller






From Project

Back to project page DEVIEW2014_AndroidApp_Demo.

License

The source code is released under:

Apache License

If you think the Android project DEVIEW2014_AndroidApp_Demo listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.nhn.android.deview.core.lifecycle;
//w  w w  . j av a  2 s  . c  o  m
import java.util.Vector;

public class CycleController implements CycleControllable {
  Vector<CycleControllable> mList = new Vector<CycleControllable>();
  class State {
    final static int NONE = 0;
    final static int STARTED = 0;
    final static int RESUMED = 1;
    final static int PAUSED = 2;
    final static int STOPPED = 4;
    
    public int state;
    public CycleControllable control;
  }
  
  public void register(CycleControllable object,int callState) {    
    if (mList.add(object) == true) {
      if (state >= State.STARTED) {
        object.onStart();
      }
      if (state >= State.RESUMED) {
        object.onResume();
      }
      if (state >= State.PAUSED) {
        object.onPause();
      }
      if (state >= State.STOPPED) {
        object.onStop();
      }
    }
  }

  int state = State.NONE;
      
  public void unregister(CycleControllable object,boolean invokeDestroy) {
    if (mList.remove(object) == true) {
      if (state >= State.STARTED) {
        onStart();
      }
      if (state >= State.RESUMED) {
        onResume();
      }
      
      if (invokeDestroy == true) {
        onDestroy();
      }
    }
  }
  
  public void finish() {
    for(CycleControllable c:mList) {
      c.onDestroy();
    }
    mList.removeAllElements();
  }

  @Override
  public void onStart() {
    state = State.STARTED;
    for(CycleControllable c:mList) {
      c.onStart();
    }
  }

  @Override
  public void onResume() {
    state = State.RESUMED;
    for(CycleControllable c:mList) {
      c.onResume();
    }    
  }

  @Override
  public void onPause() {  
    state = State.PAUSED;
    for(CycleControllable c:mList) {
      c.onPause();
    }
  }

  @Override
  public void onStop() {    
    state = State.STOPPED;
    for(CycleControllable c:mList) {
      c.onStop();
    }
  }

  @Override
  public void onDestroy() {
    state = State.STOPPED;
    for(CycleControllable c:mList) {
      c.onDestroy();
    }
  }

  @Override
  public void onActivityResult() {
  }
}




Java Source Code List

com.nhn.android.deview.AppContext.java
com.nhn.android.deview.AppTable.java
com.nhn.android.deview.DeViewApplication.java
com.nhn.android.deview.DeviewSchemeActivity.java
com.nhn.android.deview.MainDB.java
com.nhn.android.deview.ThreadWorker.java
com.nhn.android.deview.core.connector.DataConnectorListener.java
com.nhn.android.deview.core.connector.DataDoc.java
com.nhn.android.deview.core.connector.DataField.java
com.nhn.android.deview.core.connector.DataSet.java
com.nhn.android.deview.core.connector.DefaultDataConnector.java
com.nhn.android.deview.core.db.CursorReader.java
com.nhn.android.deview.core.db.DbTable.java
com.nhn.android.deview.core.lifecycle.CycleBaseLayout.java
com.nhn.android.deview.core.lifecycle.CycleControllable.java
com.nhn.android.deview.core.lifecycle.CycleControllerActivity.java
com.nhn.android.deview.core.lifecycle.CycleController.java
com.nhn.android.deview.core.lifecycle.CycleFragment.java
com.nhn.android.deview.core.listview.ListCellViewAdapter.java
com.nhn.android.deview.core.listview.ListCellView.java
com.nhn.android.deview.core.listview.PageViewPagerAdapter.java
com.nhn.android.deview.core.listview.PageView.java
com.nhn.android.deview.core.pager.SimplePagerAdapter.java
com.nhn.android.deview.core.transfer.BundleField.java
com.nhn.android.deview.core.transfer.BundleMapper.java
com.nhn.android.deview.core.transfer.IntentUri.java
com.nhn.android.deview.core.transfer.UriObject.java
com.nhn.android.deview.core.view.DeclareView.java
com.nhn.android.deview.core.view.ViewMapper.java
com.nhn.android.deview.dao.DeviewUri.java
com.nhn.android.deview.dao.MyMemoManager.java
com.nhn.android.deview.dao.MyMemo.java
com.nhn.android.deview.dao.MySchedule.java
com.nhn.android.deview.dao.program.ProgramData.java
com.nhn.android.deview.dao.program.ProgramListConnector.java
com.nhn.android.deview.dao.program.ProgramListDoc.java
com.nhn.android.deview.dao.program.ProgramManager.java
com.nhn.android.deview.dao.program.ProgramTrack.java
com.nhn.android.deview.dao.program.TrackListConnector.java
com.nhn.android.deview.ui.main.MainActivity.java
com.nhn.android.deview.ui.main.ProgramCellView.java
com.nhn.android.deview.ui.main.ProgramPageView.java
com.nhn.android.deview.ui.note.MemoCellView.java
com.nhn.android.deview.ui.note.MemoListActivity.java
com.nhn.android.deview.ui.note.MemoRecorder.java
com.nhn.android.deview.ui.note.MyScheduleActivity.java
com.nhn.android.deview.webviewer.MemoWebToolbar.java
com.nhn.android.deview.webviewer.ProgramWebActivity.java
com.nhn.android.deview.webviewer.WebPageView.java