Revision: 8448
Author: [email protected]
Date: Fri Jul 30 15:04:18 2010
Log: Fixed 2 TODOs: (a) removed the RequestFactory variable from AbstractRecordEditActivity,
(b) Removed all the nested interfaces from RequestFactory.

Patch by: amitmanjhi
Review by: rjrjr

Review at http://gwt-code-reviews.appspot.com/731802

http://code.google.com/p/google-web-toolkit/source/detail?r=8448

Added:
 /trunk/user/src/com/google/gwt/requestfactory/server/RequestDefinition.java
 /trunk/user/src/com/google/gwt/requestfactory/shared/RequestObject.java
Modified:
/trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/client/ExpenseDetails.java /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileExpenseEntry.java /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileReportEntry.java /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/EmployeeRequest.java /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ExpenseRequest.java /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ReportRequest.java /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeDetailsActivity.java /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeEditActivity.java /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportDetailsActivity.java /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportEditActivity.java
 /trunk/user/src/com/google/gwt/app/place/AbstractRecordEditActivity.java
/trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractDoubleRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractIntegerRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonListRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonObjectRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractLongRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractVoidRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/RequestFactoryJsonImpl.java
 /trunk/user/src/com/google/gwt/requestfactory/server/OperationRegistry.java
/trunk/user/src/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistry.java /trunk/user/src/com/google/gwt/requestfactory/server/RequestFactoryServlet.java
 /trunk/user/src/com/google/gwt/requestfactory/shared/LoggingRequest.java
 /trunk/user/src/com/google/gwt/requestfactory/shared/RecordListRequest.java
 /trunk/user/src/com/google/gwt/requestfactory/shared/RecordRequest.java
 /trunk/user/src/com/google/gwt/requestfactory/shared/RequestFactory.java
/trunk/user/test/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistryTest.java
 /trunk/user/test/com/google/gwt/requestfactory/server/SimpleFooRequest.java

=======================================
--- /dev/null
+++ /trunk/user/src/com/google/gwt/requestfactory/server/RequestDefinition.java Fri Jul 30 15:04:18 2010
@@ -0,0 +1,59 @@
+/*
+ * Copyright 2010 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package com.google.gwt.requestfactory.server;
+
+/**
+ * <p>
+ * <span style="color:red">Experimental API: This class is still under rapid
+ * development, and is very likely to be deleted. Use it at your own risk.
+ * </span>
+ * </p>
+ * Implemented by enums that define the mapping between request objects and
+ * service methods.
+ */
+public interface RequestDefinition {
+  /**
+   * Returns the name of the (domain) class that contains the method to be
+   * invoked on the server.
+   */
+  String getDomainClassName();
+
+  /**
+   * Returns the name of the method to be invoked on the server.
+   */
+  String getDomainMethodName();
+
+  /**
+   * Returns the parameter types of the method to be invoked on the server.
+   */
+  Class<?>[] getParameterTypes();
+
+  /**
+   * Returns the return type of the method to be invoked on the server.
+   */
+  Class<?> getReturnType();
+
+  /**
+   * Returns true if the request returns Lists of {...@link #getReturnType},
+   * false for single instances.
+   */
+  boolean isReturnTypeList();
+
+  /**
+   * Returns the name.
+   */
+  String name();
+}
=======================================
--- /dev/null
+++ /trunk/user/src/com/google/gwt/requestfactory/shared/RequestObject.java Fri Jul 30 15:04:18 2010
@@ -0,0 +1,44 @@
+/*
+ * Copyright 2010 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package com.google.gwt.requestfactory.shared;
+
+import com.google.gwt.valuestore.shared.Property;
+import com.google.gwt.valuestore.shared.Record;
+
+/**
+ * <p>
+ * <span style="color:red">Experimental API: This class is still under rapid
+ * development, and is very likely to be deleted. Use it at your own risk.
+ * </span>
+ * </p>
+ * Implemented by the request objects created by this factory.
+ * @param <T> The return type of objects in the corresponding response.
+ */
+public interface RequestObject<T> {
+  // reset the DeltaValueStore.
+  void reset();
+
+  void fire(Receiver<T> receiver);
+
+ // can get access to a DeltaValueStore only in the context of a RequestObject.
+  DeltaValueStore getDeltaValueStore();
+
+  String getRequestData();
+
+  void handleResponseText(String responseText);
+
+  <V> void set(Property<V> property, Record record, V value);
+}
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/client/ExpenseDetails.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/client/ExpenseDetails.java Fri Jul 30 15:04:18 2010
@@ -41,7 +41,7 @@
 import com.google.gwt.i18n.client.NumberFormat;
 import com.google.gwt.requestfactory.shared.DeltaValueStore;
 import com.google.gwt.requestfactory.shared.Receiver;
-import com.google.gwt.requestfactory.shared.RequestFactory.RequestObject;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.resources.client.ImageResource;
 import com.google.gwt.sample.bikeshed.style.client.Styles;
 import com.google.gwt.sample.expenses.gwt.request.EmployeeRecord;
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileExpenseEntry.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileExpenseEntry.java Fri Jul 30 15:04:18 2010
@@ -19,7 +19,7 @@
 import com.google.gwt.dom.client.Element;
 import com.google.gwt.requestfactory.shared.DeltaValueStore;
 import com.google.gwt.requestfactory.shared.Receiver;
-import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.sample.expenses.gwt.request.ExpenseRecord;
 import com.google.gwt.sample.expenses.gwt.request.ExpensesRequestFactory;
 import com.google.gwt.uibinder.client.UiBinder;
@@ -56,7 +56,7 @@
   private ExpenseRecord expense;
   private final ExpensesRequestFactory requestFactory;
   private final Listener listener;
-  private RequestFactory.RequestObject<Void> requestObject;
+  private RequestObject<Void> requestObject;

   public MobileExpenseEntry(Listener listener,
       ExpensesRequestFactory requestFactory) {
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileReportEntry.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/client/MobileReportEntry.java Fri Jul 30 15:04:18 2010
@@ -19,7 +19,7 @@
 import com.google.gwt.dom.client.Element;
 import com.google.gwt.requestfactory.shared.DeltaValueStore;
 import com.google.gwt.requestfactory.shared.Receiver;
-import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.sample.expenses.gwt.request.ExpenseRecord;
 import com.google.gwt.sample.expenses.gwt.request.ExpensesRequestFactory;
 import com.google.gwt.sample.expenses.gwt.request.ReportRecord;
@@ -62,7 +62,7 @@
   private ReportRecord report;
   private final ExpensesRequestFactory requestFactory;
   private final Listener listener;
-  private RequestFactory.RequestObject<Void> requestObject;
+  private RequestObject<Void> requestObject;

   public MobileReportEntry(Listener listener,
       ExpensesRequestFactory requestFactory) {
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/EmployeeRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/EmployeeRequest.java Fri Jul 30 15:04:18 2010
@@ -18,7 +18,7 @@
 import com.google.gwt.requestfactory.shared.Instance;
 import com.google.gwt.requestfactory.shared.RecordListRequest;
 import com.google.gwt.requestfactory.shared.RecordRequest;
-import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.requestfactory.shared.Service;
 import com.google.gwt.sample.expenses.server.domain.Employee;
 import com.google.gwt.valuestore.shared.PropertyReference;
@@ -36,12 +36,12 @@
   /**
    * @return a request object
    */
-  RequestFactory.RequestObject<Long> countEmployees();
+  RequestObject<Long> countEmployees();

   /**
    * @return a request object
    */
-  RequestFactory.RequestObject<Long> countEmployeesByDepartment(
+  RequestObject<Long> countEmployeesByDepartment(
       String department);

   /**
@@ -71,12 +71,12 @@
    * @return a request object
    */
   @Instance
-  RequestFactory.RequestObject<Void> persist();
+  RequestObject<Void> persist();

   // TODO: a hack for now.
  /**
   * @return a request object
   */
   @Instance
-  RequestFactory.RequestObject<Void> remove();
-}
+  RequestObject<Void> remove();
+}
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ExpenseRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ExpenseRequest.java Fri Jul 30 15:04:18 2010
@@ -17,7 +17,7 @@

 import com.google.gwt.requestfactory.shared.Instance;
 import com.google.gwt.requestfactory.shared.RecordListRequest;
-import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.requestfactory.shared.Service;
 import com.google.gwt.sample.expenses.server.domain.Expense;
 import com.google.gwt.valuestore.shared.PropertyReference;
@@ -54,12 +54,12 @@
    * @return a request object
    */
   @Instance
-  RequestFactory.RequestObject<Void> persist();
+  RequestObject<Void> persist();

  /**
   * @return a request object
   */
   @Instance
-  RequestFactory.RequestObject<Void> remove();
+  RequestObject<Void> remove();

 }
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ReportRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/request/ReportRequest.java Fri Jul 30 15:04:18 2010
@@ -18,7 +18,7 @@
 import com.google.gwt.requestfactory.shared.Instance;
 import com.google.gwt.requestfactory.shared.RecordListRequest;
 import com.google.gwt.requestfactory.shared.RecordRequest;
-import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.requestfactory.shared.Service;
 import com.google.gwt.sample.expenses.server.domain.Report;
 import com.google.gwt.valuestore.shared.PropertyReference;
@@ -36,12 +36,12 @@
   /**
    * @return a request object
    */
-  RequestFactory.RequestObject<Long> countReports();
+  RequestObject<Long> countReports();

   /**
    * @return a request object
    */
-  RequestFactory.RequestObject<Long> countReportsBySearch(Long employeeId,
+  RequestObject<Long> countReportsBySearch(Long employeeId,
       String department, String startsWith);

   /**
@@ -78,11 +78,11 @@
    * @return a request object
    */
   @Instance
-  RequestFactory.RequestObject<Void> persist();
+  RequestObject<Void> persist();

   /**
    * @return a request object
    */
   @Instance
-  RequestFactory.RequestObject<Void> remove();
-}
+  RequestObject<Void> remove();
+}
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeDetailsActivity.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeDetailsActivity.java Fri Jul 30 15:04:18 2010
@@ -20,7 +20,7 @@
 import com.google.gwt.app.place.RecordDetailsView;
 import com.google.gwt.requestfactory.shared.DeltaValueStore;
 import com.google.gwt.requestfactory.shared.Receiver;
-import com.google.gwt.requestfactory.shared.RequestFactory.RequestObject;
+import com.google.gwt.requestfactory.shared.RequestObject;
import com.google.gwt.sample.expenses.gwt.client.place.EmployeeScaffoldPlace;
 import com.google.gwt.sample.expenses.gwt.client.place.ScaffoldPlace;
import com.google.gwt.sample.expenses.gwt.client.place.ScaffoldRecordPlace.Operation;
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeEditActivity.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/employee/EmployeeEditActivity.java Fri Jul 30 15:04:18 2010
@@ -58,7 +58,7 @@
public EmployeeEditActivity(String id, RecordEditView<EmployeeRecord> view,
       ExpensesRequestFactory requests,
       PlaceController<ScaffoldPlace> placeController) {
-    super(view, id, requests, requests.employeeRequest().persist());
+    super(view, id, requests.employeeRequest().persist());
     this.requests = requests;
     this.placeController = placeController;
   }
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportDetailsActivity.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportDetailsActivity.java Fri Jul 30 15:04:18 2010
@@ -20,7 +20,7 @@
 import com.google.gwt.app.place.RecordDetailsView;
 import com.google.gwt.requestfactory.shared.DeltaValueStore;
 import com.google.gwt.requestfactory.shared.Receiver;
-import com.google.gwt.requestfactory.shared.RequestFactory.RequestObject;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.sample.expenses.gwt.client.place.ReportScaffoldPlace;
 import com.google.gwt.sample.expenses.gwt.client.place.ScaffoldPlace;
import com.google.gwt.sample.expenses.gwt.client.place.ScaffoldRecordPlace.Operation;
=======================================
--- /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportEditActivity.java Wed Jul 28 16:39:40 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/expenses/gwt/ui/report/ReportEditActivity.java Fri Jul 30 15:04:18 2010
@@ -58,7 +58,7 @@
   public ReportEditActivity(String id, RecordEditView<ReportRecord> view,
       ExpensesRequestFactory requests,
       PlaceController<ScaffoldPlace> placeController) {
-    super(view, id, requests, requests.reportRequest().persist());
+    super(view, id, requests.reportRequest().persist());
     this.requests = requests;
     this.placeController = placeController;
   }
=======================================
--- /trunk/user/src/com/google/gwt/app/place/AbstractRecordEditActivity.java Fri Jul 30 07:51:15 2010 +++ /trunk/user/src/com/google/gwt/app/place/AbstractRecordEditActivity.java Fri Jul 30 15:04:18 2010
@@ -17,7 +17,7 @@

 import com.google.gwt.requestfactory.shared.DeltaValueStore;
 import com.google.gwt.requestfactory.shared.Receiver;
-import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.user.client.Window;
 import com.google.gwt.valuestore.shared.Record;
 import com.google.gwt.valuestore.shared.SyncResult;
@@ -38,22 +38,19 @@
public abstract class AbstractRecordEditActivity<R extends Record> implements
     Activity, RecordEditView.Delegate {

-  // TODO(amitmanjhi): get rid of the requests field.
-  private final RequestFactory requests;
   private final boolean creating;
   private final RecordEditView<R> view;

   private String id;
   private String futureId;
   private Display display;
-  private RequestFactory.RequestObject<Void> requestObject;
+  private RequestObject<Void> requestObject;

   public AbstractRecordEditActivity(RecordEditView<R> view, String id,
- RequestFactory requests, RequestFactory.RequestObject<Void> requestObject) {
+      RequestObject<Void> requestObject) {
     this.view = view;
     this.creating = "".equals(id);
     this.id = id;
-    this.requests = requests;
     this.requestObject = requestObject;
   }

@@ -94,7 +91,7 @@
     }
     view.setEnabled(false);

-    final RequestFactory.RequestObject<Void> toCommit = requestObject;
+    final RequestObject<Void> toCommit = requestObject;
     requestObject = null;

     Receiver<Void> receiver = new Receiver<Void>() {
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractDoubleRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractDoubleRequest.java Fri Jul 30 15:04:18 2010
@@ -26,7 +26,7 @@
  * </span>
  * </p>
  * Abstract implementation of
- * {...@link com.google.gwt.requestfactory.shared.RequestFactory.RequestObject
+ * {...@link com.google.gwt.requestfactory.shared.RequestObject
  * RequestFactory.RequestObject} for requests that return Double.
  */
 public abstract class AbstractDoubleRequest extends
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractIntegerRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractIntegerRequest.java Fri Jul 30 15:04:18 2010
@@ -26,7 +26,7 @@
  * </span>
  * </p>
  * Abstract implementation of
- * {...@link com.google.gwt.requestfactory.shared.RequestFactory.RequestObject
+ * {...@link com.google.gwt.requestfactory.shared.RequestObject
  * RequestFactory.RequestObject} for requests that return Integer.
  */
 public abstract class AbstractIntegerRequest extends
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonListRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonListRequest.java Fri Jul 30 15:04:18 2010
@@ -33,7 +33,7 @@
  * </span>
  * </p>
  * Abstract implementation of
- * {...@link com.google.gwt.requestfactory.shared.RequestFactory.RequestObject
+ * {...@link com.google.gwt.requestfactory.shared.RequestObject
  * RequestFactory.RequestObject} for requests that return lists of
  * {...@link Record}.
  *
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonObjectRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonObjectRequest.java Fri Jul 30 15:04:18 2010
@@ -30,7 +30,7 @@
  * </span>
  * </p>
  * Abstract implementation of
- * {...@link com.google.gwt.requestfactory.shared.RequestFactory.RequestObject
+ * {...@link com.google.gwt.requestfactory.shared.RequestObject
* RequestFactory.RequestObject} for requests that return single instances of
  * {...@link Record}.
  *
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractLongRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractLongRequest.java Fri Jul 30 15:04:18 2010
@@ -26,7 +26,7 @@
  * </span>
  * </p>
  * Abstract implementation of
- * {...@link com.google.gwt.requestfactory.shared.RequestFactory.RequestObject
+ * {...@link com.google.gwt.requestfactory.shared.RequestObject
  * RequestFactory.RequestObject} for requests that return Long.
  */
 public abstract class AbstractLongRequest extends
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java Fri Jul 30 15:04:18 2010
@@ -17,7 +17,7 @@

 import com.google.gwt.requestfactory.shared.DeltaValueStore;
 import com.google.gwt.requestfactory.shared.Receiver;
-import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.valuestore.shared.Property;
 import com.google.gwt.valuestore.shared.Record;

@@ -32,14 +32,14 @@
  * development, and is very likely to be deleted. Use it at your own risk.
  * </span>
  * </p>
- * Abstract implementation of {...@link RequestFactory.RequestObject}. Each request
+ * Abstract implementation of {...@link RequestObject}. Each request
  * stores a {...@link DeltaValueStore}.
  *
  * @param <T> return type
  * @param <R> type of this request object
  */
 public abstract class AbstractRequest<T, R extends AbstractRequest<T, R>>
-    implements RequestFactory.RequestObject<T> {
+    implements RequestObject<T> {

   protected final RequestFactoryJsonImpl requestFactory;
   protected DeltaValueStore deltaValueStore;
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractVoidRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractVoidRequest.java Fri Jul 30 15:04:18 2010
@@ -26,7 +26,7 @@
  * </span>
  * </p>
  * Abstract implementation of
- * {...@link com.google.gwt.requestfactory.shared.RequestFactory.RequestObject
+ * {...@link com.google.gwt.requestfactory.shared.RequestObject
  * RequestFactory.RequestObject} for requests that return Void.
  */
 public abstract class AbstractVoidRequest extends
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/client/impl/RequestFactoryJsonImpl.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/RequestFactoryJsonImpl.java Fri Jul 30 15:04:18 2010
@@ -24,6 +24,7 @@
 import com.google.gwt.http.client.Response;
 import com.google.gwt.requestfactory.shared.RequestEvent;
 import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.requestfactory.shared.RequestEvent.State;
 import com.google.gwt.requestfactory.shared.impl.RequestDataManager;
 import com.google.gwt.valuestore.shared.Record;
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/server/OperationRegistry.java Thu Jun 24 14:48:00 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/server/OperationRegistry.java Fri Jul 30 15:04:18 2010
@@ -15,7 +15,6 @@
  */
 package com.google.gwt.requestfactory.server;

-import com.google.gwt.requestfactory.shared.RequestFactory;

 /**
  * <p>
@@ -27,5 +26,5 @@
  */
 public interface OperationRegistry {

-  RequestFactory.RequestDefinition getOperation(String operationName);
-}
+  RequestDefinition getOperation(String operationName);
+}
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistry.java Thu Jun 24 14:48:00 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistry.java Fri Jul 30 15:04:18 2010
@@ -16,7 +16,7 @@
 package com.google.gwt.requestfactory.server;

 import com.google.gwt.requestfactory.shared.DataTransferObject;
-import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.requestfactory.shared.Service;
 import com.google.gwt.valuestore.shared.Record;

@@ -34,12 +34,12 @@
  * </p>
  * OperationRegistry which uses the operation name as a convention for
  * reflection to a method on a class, and returns an appropriate {...@link
- * com.google.gwt.requestfactory.shared.RequestFactory.RequestDefinition}.
+ * com.google.gwt.requestfactory.server.RequestDefinition}.
  */
public class ReflectionBasedOperationRegistry implements OperationRegistry {

   class ReflectiveRequestDefinition
-      implements RequestFactory.RequestDefinition {
+      implements RequestDefinition {

     private Class<?> requestClass;

@@ -110,7 +110,7 @@
         ParameterizedType pType = (ParameterizedType) type;
         Class<?> rawType = (Class<?>) pType.getRawType();
         if (List.class.isAssignableFrom(rawType)
- || RequestFactory.RequestObject.class.isAssignableFrom(rawType)) {
+            || RequestObject.class.isAssignableFrom(rawType)) {
           Class<?> rType = getTypeArgument(pType);
           if (rType != null) {
             if (List.class.isAssignableFrom(rType)) {
@@ -154,7 +154,7 @@
    * Turns an operation in the form of package.requestClass::method into a
    * RequestDefinition via reflection.
    */
- public RequestFactory.RequestDefinition getOperation(String operationName) {
+  public RequestDefinition getOperation(String operationName) {
String decodedOperationName = securityProvider.mapOperation(operationName);
     String parts[] = decodedOperationName.split(SCOPE_SEPARATOR);
     final String reqClassName = parts[0];
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/server/RequestFactoryServlet.java Fri Jul 30 07:51:15 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/server/RequestFactoryServlet.java Fri Jul 30 15:04:18 2010
@@ -17,7 +17,6 @@

 import com.google.gwt.requestfactory.shared.DataTransferObject;
 import com.google.gwt.requestfactory.shared.RequestFactory;
-import com.google.gwt.requestfactory.shared.RequestFactory.RequestDefinition;
 import com.google.gwt.requestfactory.shared.impl.RequestDataManager;
 import com.google.gwt.valuestore.shared.Property;
 import com.google.gwt.valuestore.shared.Record;
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/shared/LoggingRequest.java Mon Jul 26 15:35:20 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/shared/LoggingRequest.java Fri Jul 30 15:04:18 2010
@@ -31,7 +31,7 @@
   // supported for now, so using it as a boolean.
   // Should also be passing something better than a series of strings, but
   // that's the only possibility for now.
-  RequestFactory.RequestObject<Long> logMessage(
+  RequestObject<Long> logMessage(
       String level, String loggerName, String message);

 }
=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/shared/RecordListRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/shared/RecordListRequest.java Fri Jul 30 15:04:18 2010
@@ -33,7 +33,7 @@
  * @param <R> The type held by the returned list
  */
 public interface RecordListRequest<R extends Record> extends
-    RequestFactory.RequestObject<List<R>> {
+    RequestObject<List<R>> {

   RecordListRequest<R> forProperties(Collection<Property<?>> properties);

=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/shared/RecordRequest.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/shared/RecordRequest.java Fri Jul 30 15:04:18 2010
@@ -32,7 +32,7 @@
  * @param <R> return type
  */
 public interface RecordRequest<R extends Record> extends
-    RequestFactory.RequestObject<R> {
+    RequestObject<R> {

   RecordRequest<R> forProperties(Collection<Property<?>> properties);

=======================================
--- /trunk/user/src/com/google/gwt/requestfactory/shared/RequestFactory.java Wed Jul 28 16:39:40 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/shared/RequestFactory.java Fri Jul 30 15:04:18 2010
@@ -16,7 +16,6 @@
 package com.google.gwt.requestfactory.shared;

 import com.google.gwt.event.shared.HandlerManager;
-import com.google.gwt.valuestore.shared.Property;
 import com.google.gwt.valuestore.shared.Record;
 import com.google.gwt.valuestore.shared.ValueStore;

@@ -29,64 +28,6 @@
  * Marker interface for the RequestFactory code generator.
  */
 public interface RequestFactory {
-
- // TODO all these inner interfaces are clutter, move them to their own files
-  /**
- * Implemented by enums that define the mapping between request objects and
-   * service methods.
-   */
-  interface RequestDefinition {
-    /**
- * Returns the name of the (domain) class that contains the method to be
-     * invoked on the server.
-     */
-    String getDomainClassName();
-
-    /**
-     * Returns the name of the method to be invoked on the server.
-     */
-    String getDomainMethodName();
-
-    /**
- * Returns the parameter types of the method to be invoked on the server.
-     */
-    Class<?>[] getParameterTypes();
-
-    /**
-     * Returns the return type of the method to be invoked on the server.
-     */
-    Class<?> getReturnType();
-
-    /**
-     * Returns true if the request returns Lists of {...@link #getReturnType},
-     * false for single instances.
-     */
-    boolean isReturnTypeList();
-
-    /**
-     * Returns the name.
-     */
-    String name();
-  }
-
-  /**
-   * Implemented by the request objects created by this factory.
-   */
-  interface RequestObject<T> {
-    // reset the DeltaValueStore.
-    void reset();
-
-    void fire(Receiver<T> receiver);
-
- // can get access to a DeltaValueStore only in the context of a RequestObject.
-    DeltaValueStore getDeltaValueStore();
-
-    String getRequestData();
-
-    void handleResponseText(String responseText);
-
-    <V> void set(Property<V> property, Record record, V value);
-  }

   // TODO: this must be configurable
   String URL = "gwtRequest";
=======================================
--- /trunk/user/test/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistryTest.java Thu Jun 24 14:48:00 2010 +++ /trunk/user/test/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistryTest.java Fri Jul 30 15:04:18 2010
@@ -15,7 +15,6 @@
  */
 package com.google.gwt.requestfactory.server;

-import com.google.gwt.requestfactory.shared.RequestFactory;
 import com.google.gwt.valuestore.shared.SimpleFooRecord;

 import junit.framework.TestCase;
@@ -35,7 +34,7 @@
   }

   public void testGetOperationListNoArgs() {
- RequestFactory.RequestDefinition request = registry.getOperation("com.google.gwt.requestfactory.server.SimpleFooRequest::findAll"); + RequestDefinition request = registry.getOperation("com.google.gwt.requestfactory.server.SimpleFooRequest::findAll");
     assert request != null;
     assertEquals("com.google.gwt.requestfactory.server.SimpleFoo",
         request.getDomainClassName());
@@ -46,7 +45,7 @@
   }

   public void testGetOperationScalarNoArgs() {
- RequestFactory.RequestDefinition request = registry.getOperation("com.google.gwt.requestfactory.server.SimpleFooRequest::countSimpleFoo"); + RequestDefinition request = registry.getOperation("com.google.gwt.requestfactory.server.SimpleFooRequest::countSimpleFoo");
     assert request != null;
     assertEquals("com.google.gwt.requestfactory.server.SimpleFoo",
         request.getDomainClassName());
@@ -57,7 +56,7 @@
   }

   public void testGetOpertionScalarWithArgs() {
- RequestFactory.RequestDefinition request = registry.getOperation("com.google.gwt.requestfactory.server.SimpleFooRequest::findSimpleFooById"); + RequestDefinition request = registry.getOperation("com.google.gwt.requestfactory.server.SimpleFooRequest::findSimpleFooById");
     assert request != null;
     assertEquals("com.google.gwt.requestfactory.server.SimpleFoo",
         request.getDomainClassName());
@@ -86,7 +85,7 @@
   }

   public void testPrivateMethodFails() {
- RequestFactory.RequestDefinition request = registry.getOperation("com.google.gwt.requestfactory.server.SimpleFooRequest::privateMethod"); + RequestDefinition request = registry.getOperation("com.google.gwt.requestfactory.server.SimpleFooRequest::privateMethod");
     assert request == null;
   }
 }
=======================================
--- /trunk/user/test/com/google/gwt/requestfactory/server/SimpleFooRequest.java Thu Jun 24 14:48:00 2010 +++ /trunk/user/test/com/google/gwt/requestfactory/server/SimpleFooRequest.java Fri Jul 30 15:04:18 2010
@@ -16,7 +16,7 @@
 package com.google.gwt.requestfactory.server;

 import com.google.gwt.requestfactory.shared.RecordListRequest;
-import com.google.gwt.requestfactory.shared.RequestFactory;
+import com.google.gwt.requestfactory.shared.RequestObject;
 import com.google.gwt.requestfactory.shared.Service;
 import com.google.gwt.valuestore.shared.SimpleFooRecord;

@@ -25,8 +25,8 @@
  */
 @Service(com.google.gwt.requestfactory.server.SimpleFoo.class)
 public interface SimpleFooRequest {
-  RequestFactory.RequestObject<Long> countSimpleFoo();
+  RequestObject<Long> countSimpleFoo();
   RecordListRequest<SimpleFooRecord> findAll();
-  RequestFactory.RequestObject<SimpleFooRecord> findSimpleFooById(Long id);
-  RequestFactory.RequestObject<Integer> privateMethod();
-}
+  RequestObject<SimpleFooRecord> findSimpleFooById(Long id);
+  RequestObject<Integer> privateMethod();
+}

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors

Reply via email to