- Removed redundant modifiers from EmployeeRecord and ReportRecord. - Added assertions to RecordKey constructors. - Fixed sync operation on the server side. Patch by: amitmanjhi Review by: rjrjr (desk review) git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@7948 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/EmployeeRecord.java b/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/EmployeeRecord.java index a5a8ee3..dc478e7 100644 --- a/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/EmployeeRecord.java +++ b/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/EmployeeRecord.java
@@ -25,11 +25,10 @@ * IRL this class will be generated by a JPA-savvy tool run before compilation. */ public interface EmployeeRecord extends Record { - public static final Property<String> userName = new Property<String>( - "userName", String.class); - public static final Property<String> displayName = new Property<String>( - "displayName", String.class); - public static final Property<EmployeeRecord> supervisor = new Property<EmployeeRecord>( + Property<String> userName = new Property<String>("userName", String.class); + Property<String> displayName = new Property<String>("displayName", + String.class); + Property<EmployeeRecord> supervisor = new Property<EmployeeRecord>( "supervisor", EmployeeRecord.class); String getDisplayName();
diff --git a/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ReportRecord.java b/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ReportRecord.java index 1a1644e..2829fb9 100644 --- a/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ReportRecord.java +++ b/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ReportRecord.java
@@ -28,12 +28,10 @@ */ public interface ReportRecord extends Record { - public static final Property<Date> created = new Property<Date>("created", - Date.class); - public static final Property<String> purpose = new Property<String>( - "purpose", String.class); - public static final Property<EmployeeRecord> reporter = new Property<EmployeeRecord>( - "reporter", EmployeeRecord.class); + Property<Date> created = new Property<Date>("created", Date.class); + Property<String> purpose = new Property<String>("purpose", String.class); + Property<EmployeeRecord> reporter = new Property<EmployeeRecord>("reporter", + EmployeeRecord.class); Date getCreated();
diff --git a/bikeshed/src/com/google/gwt/sample/expenses/server/ExpensesDataServlet.java b/bikeshed/src/com/google/gwt/sample/expenses/server/ExpensesDataServlet.java index 364f363..218c41f 100644 --- a/bikeshed/src/com/google/gwt/sample/expenses/server/ExpensesDataServlet.java +++ b/bikeshed/src/com/google/gwt/sample/expenses/server/ExpensesDataServlet.java
@@ -96,7 +96,7 @@ int length = reportArray.length(); if (length > 0) { JSONObject report = reportArray.getJSONObject(0); - Report r = Report.findReport(report.getLong(Record.id.getName())); + Report r = Report.findReport(report.getString(Record.id.getName())); r.setPurpose(report.getString(ReportRecord.purpose.getName())); r.persist(); report.put(Record.version.getName(), r.getVersion());
diff --git a/bikeshed/src/com/google/gwt/sample/expenses/server/domain/Employee.java b/bikeshed/src/com/google/gwt/sample/expenses/server/domain/Employee.java index 0be04aa..9a5dfc4 100644 --- a/bikeshed/src/com/google/gwt/sample/expenses/server/domain/Employee.java +++ b/bikeshed/src/com/google/gwt/sample/expenses/server/domain/Employee.java
@@ -60,7 +60,7 @@ } } - public static Employee findEmployee(Long id) { + public static Employee findEmployee(String id) { if (id == null) { return null; }
diff --git a/bikeshed/src/com/google/gwt/sample/expenses/server/domain/Report.java b/bikeshed/src/com/google/gwt/sample/expenses/server/domain/Report.java index 229b3d5..7027066 100644 --- a/bikeshed/src/com/google/gwt/sample/expenses/server/domain/Report.java +++ b/bikeshed/src/com/google/gwt/sample/expenses/server/domain/Report.java
@@ -62,7 +62,7 @@ } } - public static Report findReport(Long id) { + public static Report findReport(String id) { if (id == null) { return null; }
diff --git a/bikeshed/src/com/google/gwt/valuestore/client/RecordKey.java b/bikeshed/src/com/google/gwt/valuestore/client/RecordKey.java index 4d57591..2bde533 100644 --- a/bikeshed/src/com/google/gwt/valuestore/client/RecordKey.java +++ b/bikeshed/src/com/google/gwt/valuestore/client/RecordKey.java
@@ -19,18 +19,28 @@ import com.google.gwt.valuestore.shared.impl.RecordJsoImpl; import com.google.gwt.valuestore.shared.impl.RecordSchema; +/** + * The key used to store {@link com.google.gwt.valuestore.shared.Record Record}s + * in {@link com.google.gwt.valuestore.shared.ValueStore ValueStore}. + */ class RecordKey { final RecordSchema<?> schema; final Object id; RecordKey(RecordImpl record) { - this.schema = record.getSchema(); - this.id = record.getId(); + this(record.getId(), record.getSchema()); } RecordKey(RecordJsoImpl record) { - this.schema = record.getSchema(); - this.id = record.getId(); + this(record.getId(), record.getSchema()); + } + + private RecordKey(Object id, RecordSchema<?> schema) { + assert id != null; + assert schema != null; + + this.id = id; + this.schema = schema; } @Override