* with associated children.
*/
// Returns NULL upon success, otherwise returns the error heading
public Entity UploadEntry(DataEntry entry) {
DatastoreService datastore = DatastoreServiceFactory
.getDatastoreService();
User author = entry.getAuthor();
Patient patient = entry.getPatient();
ArrayList<Comment> comments = entry.getComments();
// Create and add Patient entity using as a key the unique id assigned
// upon creation
Entity patientEntity = new Entity("Patient", patient.getId(),KeyFactory.createKey("User", author.getGoogleUser()));
patientEntity.setProperty("FirstName", patient.getFirstName());
patientEntity.setProperty("LastName", patient.getLastName());
patientEntity.setProperty("DOB", patient.getDob());
patientEntity.setProperty("Gender", patient.getGender().toString());
patientEntity.setProperty("ID", patient.getId());
datastore.put(patientEntity);
// Create and add DataEntry entity with a generated unique key,
// specifying the parent key as the user
Entity dataEntity = new Entity("DataEntry", patientEntity.getKey());
dataEntity.setProperty("timestamp", entry.getTimestamp());
dataEntity.setProperty("blobKey", entry.getBlobKey());
datastore.put(dataEntity);
String hashKey = KeyFactory.keyToString(dataEntity.getKey());
entry.setKey(hashKey);
// Add each comment using a system generated key for each