Android Open Source - cost-tracker Simple Tracker






From Project

Back to project page cost-tracker.

License

The source code is released under:

GNU General Public License

If you think the Android project cost-tracker 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.helpguest.droid.tracker;
//www  .  j  a  v  a  2  s.co  m
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.Locale;

public class SimpleTracker implements ITracker {

  private Collection<ITrackerClock> tClocks = new ArrayList<ITrackerClock>();
  private String name;
  private String description;
  private boolean mVisible = true;
  private boolean mAutoStop = true;
  
  /**
   * 
   * @param name of this SimpleTracker
   */
  public SimpleTracker(String name) {
    this.name = name;
  }
  
  public SimpleTracker(String name, String description) {
    this(name);
    this.description = description;
  }
  
  /**
   * Add a tracker clock to this SimpleTracker
   * @param tClock to add
   */
  @Override
  public void add(ITrackerClock tClock) {
    if (tClock != null) {
      tClocks.add(tClock);
    }
  }
  
  @Override
  public void add(Collection<ITrackerClock> trackerClocks) {
    tClocks.addAll(trackerClocks);
  }
  
  @Override
  public String getName() {
    return name;
  }

  @Override
  public void setName(String name) {
    this.name = name;
  }

  @Override
  public String getDescription() {
    return description;
  }

  @Override
  public void setDescription(String description) {
    this.description = description;
  }

  @Override
  public Collection<ITrackerClock> getAllTrackerClocks() {
    return tClocks;
  }

  @Override
  public Collection<ITrackerClock> getTrackerClocks(Date date) {
    Collection<ITrackerClock> datedClocks = new ArrayList<ITrackerClock>();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd", Locale.getDefault());
    String formattedDate = sdf.format(date);
    for (ITrackerClock tc : tClocks) {
      Date tcDate = new Date(tc.startTime().longValue());
      if (formattedDate != null &&  formattedDate.equals(sdf.format(tcDate))) {
        datedClocks.add(tc);
      }
    }
    return datedClocks;
  }

  @Override
  public ITrackerClock getActiveTrackerClock() {
    for (ITrackerClock tc : tClocks) {
      if ( !tc.isStarted() || (tc.isStarted() && !tc.isExpired()) ) {
        return tc;
      }
    }
    return null;
  }

  @Override
  public void setVisible(boolean visible) {
    mVisible = visible;
  }
  
  @Override
  public boolean isVisible() {
    return mVisible;
  }

  @Override
  public boolean isAutoStop() {
    return mAutoStop;
  }

  @Override
  public void setAutoStop(boolean autoStop) {
    mAutoStop = autoStop;
  }

}




Java Source Code List

com.helpguest.droid.TrackerCollectionFragment.java
com.helpguest.droid.TrackerEditorFragment.java
com.helpguest.droid.TrackerLogFragment.java
com.helpguest.droid.TrackerManagerActivity.java
com.helpguest.droid.tracker.IReadOnlyTrackerManager.java
com.helpguest.droid.tracker.ITrackerClock.java
com.helpguest.droid.tracker.ITrackerManager.java
com.helpguest.droid.tracker.ITracker.java
com.helpguest.droid.tracker.InMemoryTrackerManager.java
com.helpguest.droid.tracker.OnTrackerManagerChangeListener.java
com.helpguest.droid.tracker.PersistentTrackerManager.java
com.helpguest.droid.tracker.SimpleTracker.java
com.helpguest.droid.tracker.TrackerClock.java
com.helpguest.droid.tracker.TrackerEvent.java
com.helpguest.droid.tracker.io.ITrackerReader.java
com.helpguest.droid.tracker.io.ITrackerWriter.java
com.helpguest.droid.tracker.io.TrackerFileReader.java
com.helpguest.droid.tracker.io.TrackerFileWriter.java
com.helpguest.droid.ui.ClockDetailByDate.java
com.helpguest.droid.ui.ClockSummary.java
com.helpguest.droid.ui.SummaryByDate.java
com.helpguest.droid.ui.TrackerClockEditor.java