Author: hlship
Date: Sat Jul  2 02:32:23 2011
New Revision: 1142144

URL: http://svn.apache.org/viewvc?rev=1142144&view=rev
Log:
TAP5-999: Strip out Blackbird, create T5.console namespace

Added:
    
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-console.js
Removed:
    
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/blackbird_1_0/blackbird.css
    
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/blackbird_1_0/blackbird.js
    
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/blackbird_1_0/blackbird_icons.png
    
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/blackbird_1_0/blackbird_panel.png
    
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/blackbird_1_0/spacer.gif
Modified:
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/javascript/CoreJavaScriptStack.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java
    
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/AjaxTests.java
    
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java?rev=1142144&r1=1142143&r2=1142144&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java
 Sat Jul  2 02:32:23 2011
@@ -189,6 +189,7 @@ public class SymbolConstants
      * If "true" then Blackbird JavaScript console is enabled.
      * 
      * @since 5.2.0
+     * @deprecated in 5.3, with no replacement (due to removal of Blackbird 
console entirely)
      */
     public static final String BLACKBIRD_ENABLED = 
"tapestry.blackbird-enabled";
 
@@ -232,6 +233,7 @@ public class SymbolConstants
      * The Asset path to the embedded copy of blackbird packaged with Tapestry.
      * 
      * @since 5.2.0
+     * @deprecated in 5.3 with no replacement
      */
     public static final String BLACKBIRD = "tapestry.blackbird";
 

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=1142144&r1=1142143&r2=1142144&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 02:32:23 2011
@@ -14,10 +14,6 @@
 
 package org.apache.tapestry5.internal.services.javascript;
 
-import java.util.Collections;
-import java.util.List;
-import java.util.Locale;
-
 import org.apache.tapestry5.Asset;
 import org.apache.tapestry5.SymbolConstants;
 import org.apache.tapestry5.func.F;
@@ -31,147 +27,133 @@ import org.apache.tapestry5.services.Ass
 import org.apache.tapestry5.services.javascript.JavaScriptStack;
 import org.apache.tapestry5.services.javascript.StylesheetLink;
 
+import java.util.Collections;
+import java.util.List;
+import java.util.Locale;
+
 /**
  * JavaScriptStack for core components.
- * 
+ *
  * @since 5.2.0
  */
-public class CoreJavaScriptStack implements JavaScriptStack
-{
-    private final boolean productionMode;
-
-    private final SymbolSource symbolSource;
+public class CoreJavaScriptStack implements JavaScriptStack {
+  private final boolean productionMode;
 
-    private final AssetSource assetSource;
+  private final SymbolSource symbolSource;
 
-    private final ThreadLocale threadLocale;
+  private final AssetSource assetSource;
 
-    private final List<Asset> javaScriptStack, stylesheetStack;
+  private final ThreadLocale threadLocale;
 
-    private final Asset consoleJavaScript, consoleStylesheet;
+  private final List<Asset> javaScriptStack, stylesheetStack;
 
-    private final boolean isBlackbirdEnabled;
+  private static final String ROOT = "org/apache/tapestry5";
 
-    private static final String ROOT = "org/apache/tapestry5";
+  private static final String[] CORE_JAVASCRIPT = new String[]
+          {
+                  // Core scripts added to any page that uses scripting
 
-    private static final String[] CORE_JAVASCRIPT = new String[]
-    {
-            // Core scripts added to any page that uses scripting
+                  "${tapestry.scriptaculous}/prototype.js",
 
-            "${tapestry.scriptaculous}/prototype.js",
+                  "${tapestry.scriptaculous}/scriptaculous.js",
 
-            "${tapestry.scriptaculous}/scriptaculous.js",
+                  "${tapestry.scriptaculous}/effects.js",
 
-            "${tapestry.scriptaculous}/effects.js",
+                  // Uses functions defined by the prior three.
+                  // Order is important, there are some dependencies
+                  // going on here.
 
-            // Uses functions defined by the prior three.
-            // Order is important, there are some dependencies
-            // going on here.
+                  ROOT + "/t5-core.js",
 
-            ROOT + "/t5-core.js",
+                  ROOT + "/t5-func.js",
 
-            ROOT + "/t5-func.js",
+                  ROOT + "/t5-spi.js",
 
-            ROOT + "/t5-spi.js",
+                  ROOT + "/t5-prototype.js",
 
-            ROOT + "/t5-prototype.js",
+                  ROOT + "/t5-arrays.js",
 
-            ROOT + "/t5-arrays.js",
+                  ROOT + "/t5-init.js",
 
-            ROOT + "/t5-init.js",
+                  ROOT + "/t5-pubsub.js",
 
-            ROOT + "/t5-pubsub.js",
+                  ROOT + "/t5-dom.js",
 
-            ROOT + "/t5-dom.js",
+                  ROOT + "/t5-console.js",
 
-            ROOT + "/t5-ajax.js",
+                  ROOT + "/t5-ajax.js",
 
-            ROOT + "/tapestry.js",
+                  ROOT + "/tapestry.js",
 
-            ROOT + "/tree.js" };
+                  ROOT + "/tapestry-console.js",
 
-    // Because of changes to the logic of how stylesheets get incorporated, 
the default stylesheet
-    // was removed, the logic for it is now in 
TapestryModule.contributeMarkupRenderer().
+                  ROOT + "/tree.js",
+          };
 
-    private static final String[] CORE_STYLESHEET = new String[]
-    { ROOT + "/tree.css" };
+  // Because of changes to the logic of how stylesheets get incorporated, the 
default stylesheet
+  // was removed, the logic for it is now in 
TapestryModule.contributeMarkupRenderer().
 
-    public CoreJavaScriptStack(@Symbol(SymbolConstants.PRODUCTION_MODE)
-    boolean productionMode,
+  private static final String[] CORE_STYLESHEET = new String[]
+          {
+                  ROOT + "/tapestry-console.css",
 
-    SymbolSource symbolSource,
+                  ROOT + "/tree.css"
+          };
 
-    AssetSource assetSource,
+  public CoreJavaScriptStack(
+          @Symbol(SymbolConstants.PRODUCTION_MODE)
+          boolean productionMode,
 
-    ThreadLocale threadLocale,
+          SymbolSource symbolSource,
 
-    @Symbol(SymbolConstants.BLACKBIRD_ENABLED)
-    boolean isBlackbirdEnabled)
-    {
-        this.symbolSource = symbolSource;
-        this.productionMode = productionMode;
-        this.assetSource = assetSource;
-        this.threadLocale = threadLocale;
-        this.isBlackbirdEnabled = isBlackbirdEnabled;
+          AssetSource assetSource,
 
-        javaScriptStack = convertToAssets(CORE_JAVASCRIPT);
-        stylesheetStack = convertToAssets(CORE_STYLESHEET);
+          ThreadLocale threadLocale) {
+    this.symbolSource = symbolSource;
+    this.productionMode = productionMode;
+    this.assetSource = assetSource;
+    this.threadLocale = threadLocale;
 
-        consoleJavaScript = expand("${tapestry.blackbird}/blackbird.js", ROOT 
+ "/tapestry-console.js", null);
-        consoleStylesheet = expand("${tapestry.blackbird}/blackbird.css", ROOT 
+ "/tapestry-console.css", null);
-    }
+    javaScriptStack = convertToAssets(CORE_JAVASCRIPT);
+    stylesheetStack = convertToAssets(CORE_STYLESHEET);
+  }
 
-    public String getInitialization()
-    {
-        return productionMode ? null : "Tapestry.DEBUG_ENABLED = true;";
-    }
+  public String getInitialization() {
+    return productionMode ? null : "Tapestry.DEBUG_ENABLED = true;";
+  }
 
-    public List<String> getStacks()
-    {
-        return Collections.emptyList();
-    }
+  public List<String> getStacks() {
+    return Collections.emptyList();
+  }
 
-    private List<Asset> convertToAssets(String[] paths)
-    {
-        List<Asset> assets = CollectionFactory.newList();
-
-        for (String path : paths)
-        {
-            assets.add(expand(path, null));
-        }
+  private List<Asset> convertToAssets(String[] paths) {
+    List<Asset> assets = CollectionFactory.newList();
 
-        return Collections.unmodifiableList(assets);
+    for (String path : paths) {
+      assets.add(expand(path, null));
     }
 
-    private Asset expand(String path, Locale locale)
-    {
-        String expanded = symbolSource.expandSymbols(path);
+    return Collections.unmodifiableList(assets);
+  }
 
-        return assetSource.getAsset(null, expanded, locale);
-    }
+  private Asset expand(String path, Locale locale) {
+    String expanded = symbolSource.expandSymbols(path);
 
-    private Asset expand(String blackbirdPath, String consolePath, Locale 
locale)
-    {
-        String path = isBlackbirdEnabled ? blackbirdPath : consolePath;
+    return assetSource.getAsset(null, expanded, locale);
+  }
 
-        return expand(path, locale);
-    }
+  public List<Asset> getJavaScriptLibraries() {
+    Asset messages = assetSource.getAsset(null, ROOT + 
"/tapestry-messages.js", threadLocale.getLocale());
 
-    public List<Asset> getJavaScriptLibraries()
-    {
-        Asset messages = assetSource.getAsset(null, ROOT + 
"/tapestry-messages.js", threadLocale.getLocale());
+    return createStack(javaScriptStack, messages).toList();
+  }
 
-        return createStack(javaScriptStack, messages, 
consoleJavaScript).toList();
-    }
-
-    public List<StylesheetLink> getStylesheets()
-    {
-        return createStack(stylesheetStack, 
consoleStylesheet).map(TapestryInternalUtils.assetToStylesheetLink)
-                .toList();
-    }
+  public List<StylesheetLink> getStylesheets() {
+    return 
createStack(stylesheetStack).map(TapestryInternalUtils.assetToStylesheetLink)
+            .toList();
+  }
 
-    private Flow<Asset> createStack(List<Asset> stack, Asset... assets)
-    {
-        return F.flow(stack).append(assets);
-    }
+  private Flow<Asset> createStack(List<Asset> stack, Asset... assets) {
+    return F.flow(stack).append(assets);
+  }
 }

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java?rev=1142144&r1=1142143&r2=1142144&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java
 Sat Jul  2 02:32:23 2011
@@ -2349,8 +2349,7 @@ public final class TapestryModule
         configuration.add("tapestry.datepicker.path", 
"org/apache/tapestry5/datepicker_106");
         configuration.add(SymbolConstants.DATEPICKER, 
"classpath:${tapestry.datepicker.path}");
 
-        configuration.add("tapestry.blackbird.path", 
"org/apache/tapestry5/blackbird_1_0");
-        configuration.add(SymbolConstants.BLACKBIRD, 
"classpath:${tapestry.blackbird.path}");
+        configuration.add(SymbolConstants.BLACKBIRD, "");
 
         configuration.add(SymbolConstants.PERSISTENCE_STRATEGY, 
PersistenceConstants.SESSION);
 

Added: 
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-console.js
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-console.js?rev=1142144&view=auto
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-console.js
 (added)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/t5-console.js
 Sat Jul  2 02:32:23 2011
@@ -0,0 +1,61 @@
+// 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.
+
+T5.define("console", function() {
+
+  var console;
+
+  function updateConsole(className, message) {
+    if (!console) {
+      var console = new Element("div", { "class" : "t-console" });
+
+      $(document.body).insert({top: console});
+    }
+
+    var div = new Element("div", { 'class' : className 
}).update(message).hide();
+
+    console.insert({ top: div });
+
+    new Effect.Appear(div, { duration: .25 });
+
+    var effect = new Effect.Fade(div, { delay: T5.console.DURATION,
+      afterFinish: function () {
+        T5.dom.remove(div);
+      }
+    });
+
+    div.observe("click", function() {
+      effect.cancel();
+      T5.dom.remove(div);
+    });
+  }
+
+  // TODO: replace this with a curry
+
+  function withClassName(className) {
+    return function (message) {
+      updateConsole(className, message);
+    }
+  }
+
+  return {
+    /** Time, in seconds, that floating console messages are displayed to the 
user. */
+    DURATION  : 10,
+
+    debug : withClassName("t-debug"),
+    info : withClassName("t-info"),
+    warn : withClassName("t-warn"),
+    error : withClassName("t-error")
+  };
+});
\ No newline at end of file

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/AjaxTests.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/AjaxTests.java?rev=1142144&r1=1142143&r2=1142144&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/AjaxTests.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/AjaxTests.java
 Sat Jul  2 02:32:23 2011
@@ -143,7 +143,7 @@ public class AjaxTests extends TapestryC
 
         // Wait for the console to appear
 
-        waitForCSSSelectedElementToAppear("#t-console li");
+        waitForCSSSelectedElementToAppear("div.t-console div");
 
         assertTextPresent("Communication with the server failed: Server-side 
exception.");
     }

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java?rev=1142144&r1=1142143&r2=1142144&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java
 Sat Jul  2 02:32:23 2011
@@ -1050,7 +1050,7 @@ public class CoreBehaviorsTests extends 
 
         click("link=ajax");
 
-        waitForCSSSelectedElementToAppear("#t-console li");
+        waitForCSSSelectedElementToAppear("div.t-console div");
 
         assertTextPresent("Communication with the server failed: Request event 
'action' (on component UnhandledEventDemo:ajax) was not handled; you must 
provide a matching event handler method in the component or in one of its 
containers.");
     }


Reply via email to