You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2011/07/02 02:05:36 UTC
svn commit: r1142123 - in /tapestry/tapestry5/trunk/tapestry-core/src/main:
java/org/apache/tapestry5/internal/services/javascript/
resources/org/apache/tapestry5/
Author: hlship
Date: Sat Jul 2 00:05:36 2011
New Revision: 1142123
URL: http://svn.apache.org/viewvc?rev=1142123&view=rev
Log:
TAP5-999: Add placeholders for additional T5 modules: ajax and func.
Added:
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-ajax.js
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-func.js
- copied, changed from r1142122, tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-spi.js
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/javascript/CoreJavaScriptStack.java
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-spi.js
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/javascript/CoreJavaScriptStack.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/javascript/CoreJavaScriptStack.java?rev=1142123&r1=1142122&r2=1142123&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/javascript/CoreJavaScriptStack.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/javascript/CoreJavaScriptStack.java Sat Jul 2 00:05:36 2011
@@ -70,6 +70,8 @@ public class CoreJavaScriptStack impleme
ROOT + "/t5-core.js",
+ ROOT + "/t5-func.js",
+
ROOT + "/t5-spi.js",
ROOT + "/t5-prototype.js",
@@ -82,6 +84,8 @@ public class CoreJavaScriptStack impleme
ROOT + "/t5-dom.js",
+ ROOT + "/t5-ajax.js",
+
ROOT + "/tapestry.js",
ROOT + "/tree.js" };
Added: tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-ajax.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-ajax.js?rev=1142123&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-ajax.js (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-ajax.js Sat Jul 2 00:05:36 2011
@@ -0,0 +1,74 @@
+/* Copyright 2011 The Apache Software Foundation
+ *
+ * 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.
+ */
+
+/**
+ * Defines Tapestry Ajax support, which includes sending requests and receiving
+ * replies, but also includes default handlers for errors and failures, and
+ * processing of Tapestry's partial page render response (a common response for
+ * many types of Ajax requests).
+ */
+T5.define("ajax", function() {
+
+ var $ = T5.$;
+ var spi = T5.spi;
+
+ function defaultFailure(transport) {
+ }
+
+ function defaultException(exception) {
+ }
+
+ /**
+ * Performs an AJAX request. The options object is used to identify
+ * additional parameters to be encoded into the request, and to identify the
+ * handlers for success and failure.
+ * <p>
+ * Option keys:
+ * <dl>
+ * <dt>parameters
+ * <dd>object with string keys and string values, defines additional query
+ * parameters
+ * <dt>failure
+ * <dd>A function invoked if the Ajax request fails; the function is passed
+ * the transport
+ * <dt>exception
+ * <dd>A function invoked if there's an exception processing the Ajax
+ * request, the function is passed the exception
+ * <dt>success
+ * <dd>A function invoked when the Ajax response is returned succesfully.
+ * The function is passed the transport object.
+ * <dt>method
+ * <dd>The type of request, 'get' or 'post'. 'post' is the default.
+ * </dl>
+ *
+ * @param url
+ * the URL for the request
+ * @param options
+ * an optional object that provides additional options.
+ * @return not defined
+ *
+ */
+ function request(url, options) {
+
+ return T5.spi.ajaxRequest(url,
+ }
+
+ return {
+ defaultFailure : defaultFailure,
+ defaultException : defaultException,
+ defaultSuccess : T5.func.empty,
+ request : request
+ };
+});
\ No newline at end of file
Copied: tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-func.js (from r1142122, tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-spi.js)
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-func.js?p2=tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-func.js&p1=tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-spi.js&r1=1142122&r2=1142123&rev=1142123&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-spi.js (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-func.js Sat Jul 2 00:05:36 2011
@@ -14,16 +14,23 @@
*/
/**
- * Defines the SPI (service provider interface). This represents an abstract
- * layer between Tapestry's JavaScript and an underlying framework (such as
- * Prototype and JQuery).
- *
- * <p>
- * The SPI defines placeholders for functions whose implementations are provided
- * elsehwere. In some cases, an SPI may define a function in terms of other SPI
- * functions; a framework layer may leave such a function alone or re-implement
- * it.
+ * Define functions used to create or manipulate other functions, plus some
+ * extra utilities.
*/
-T5.define("spi", {
+T5.define("func", function() {
+ return {
+ /**
+ * The empty function does nothing.
+ */
+ empty : function() {
+ },
+
+ /**
+ * The identity function returns its first argument.
+ */
+ identity : function(x) {
+ return x;
+ }
+ };
});
\ No newline at end of file
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-spi.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-spi.js?rev=1142123&r1=1142122&r2=1142123&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-spi.js (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-spi.js Sat Jul 2 00:05:36 2011
@@ -26,4 +26,14 @@
*/
T5.define("spi", {
+ /**
+ * Peforms an ajax request, as per T5.ajax.request(). Supplied by the SPI
+ * implementation.
+ *
+ * @param url
+ * URL for Ajax request
+ * @param options
+ * additional options defined by T5.ajax.request().
+ */
+ ajaxRequest : undefined
});
\ No newline at end of file