Android Open Source - note-pad Note Repository






From Project

Back to project page note-pad.

License

The source code is released under:

GNU General Public License

If you think the Android project note-pad 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

/**
 * // w  w w.j a  va2  s  .c  o m
 */
package in.anandm.apps.notepad.infrastructure.persistence.inmemory;

import in.anandm.apps.notepad.domain.model.note.INoteRepository;
import in.anandm.apps.notepad.domain.model.note.Note;

import java.util.Arrays;
import java.util.Hashtable;
import java.util.List;

import android.database.Cursor;

/**
 * @author anandm
 *
 */
public class NoteRepository implements INoteRepository {


  private Hashtable<Long, Note> notes = new Hashtable<Long, Note>();

  public static final class NotRepositoryHolder{
    public static final INoteRepository INSTANCE = new NoteRepository();

  }
  /* (non-Javadoc)
   * @see in.anandm.apps.notepad.domain.model.note.INoteRepository#saveNote(in.anandm.apps.notepad.domain.model.note.Note)
   */
  @Override
  public void saveNote(Note note) {
    notes.put(note.getId(), note);

  }

  /* (non-Javadoc)
   * @see in.anandm.apps.notepad.domain.model.note.INoteRepository#deleteNoteById(java.lang.Long)
   */
  @Override
  public void deleteNoteById(Long id) {
    notes.remove(id);

  }

  /* (non-Javadoc)
   * @see in.anandm.apps.notepad.domain.model.note.INoteRepository#getNoteById(java.lang.Long)
   */
  @Override
  public Note getNoteById(Long id) {
    // TODO Auto-generated method stub
    return notes.get(id);
  }

  @Override
  public List<Note> getAll() {
    Note[] noteArray = new Note[notes.size()];
    noteArray = notes.values().toArray(noteArray);

    return Arrays.asList(noteArray);
  }

  @Override
  public Cursor getCursor() {
    throw new UnsupportedOperationException("cursor is only applicable for sqlite db");
  }

  @Override
  public Cursor getWhereTitleContains(CharSequence constraint) {
    throw new UnsupportedOperationException("cursor is only applicable for sqlist db");
  }

}




Java Source Code List

in.anandm.apps.notepad.domain.model.note.INoteRepository.java
in.anandm.apps.notepad.domain.model.note.Note.java
in.anandm.apps.notepad.infrastructure.persistence.inmemory.NoteRepository.java
in.anandm.apps.notepad.infrastructure.persistence.sqlite.NoteRepository.java
in.anandm.apps.notepad.interfaces.NoteActivity.java
in.anandm.apps.notepad.interfaces.NoteAdapter.java
in.anandm.apps.notepad.interfaces.NotePadMainActivity.java