Opentaps 2 Notes

From Opentaps Wiki
Revision as of 23:04, 17 January 2012 by Sichen (talk | contribs) (How to Install It)
Jump to navigationJump to search

opentaps 2 Notes

What It Does

This is a very simple yet useful application to demonstrate the concepts and technologies behind opentaps 2.

On the server side, there will be a set of API for creating and retrieving notes which can be associated with different things: orders, customers, tasks, products, etc. On the client side, there will be UI tools for working with the server-side notes API to create or retrieve notes. You can write your own UI around these API, using our examples for both web and mobile platforms.

The cool thing is that you can configure up to 10 things to associate with your notes, whatever they maybe. You can thus associate notes with your customers or tasks and make a CRM system, or associate them with your products or orders and have a product review system. You can even organize the UI to make your own version of Twitter.

The open source version of opentaps 2 Notes will include:

  • a server side application built with opentaps 2
  • a browser client written in HTML5/CSS/Javascript
  • mobile clients for iPhone and Android
  • mobile libraries for iPhone and Android for use with your own applications

How It Works

The Data Model

NoteData - the notes themselves
* noteId - unique ID
* noteText - text field for the note
* createdByUserId - identity of user creating the note
* userIdType - identifies type of user Id (Facebook, twitter, LDAP, email, etc.)
* dateTimeCreated - date and time when note was created
* attribute1..10 - arbitrary attributes associated with note

The Architecture

Separate OSGi bundles are created for:

  • Notes application services, defining all the API services (see below)
  • Notes application implementation, implementing the services using the repository interfaces
  • Notes application repository, including definitions of the entities and implementations of the repository methods



  • Input:
    • text
    • value for attribute1...10
  • Output:
    • noteId


  • Input:
    • noteId
  • Output:
    • NoteData for noteId


  • Input:
    • noteId
    • text


  • Input
    • noteId


  • Input (any of the following):
    • createdByUserId
    • createdByUserType
    • value for attribute1...10
  • Output
    • List of NoteData or empty list


Mobile API

How to Install It

Follow general installation instructions for Getting opentaps 2

How to Use It

The HTML App

The Mobile App