View Javadoc

1   package org.appfuse.webapp.services.javascript;
2   
3   import org.apache.tapestry5.Asset;
4   import org.apache.tapestry5.ioc.internal.util.CollectionFactory;
5   import org.apache.tapestry5.ioc.services.SymbolSource;
6   import org.apache.tapestry5.services.AssetSource;
7   import org.apache.tapestry5.services.javascript.JavaScriptStack;
8   import org.apache.tapestry5.services.javascript.StylesheetLink;
9   
10  import java.util.Collections;
11  import java.util.List;
12  
13  /**
14   * Add Twitter Bootstrap Stack to Tapestry
15   *
16   * @author Serge Eby
17   */
18  public class BootstrapJavaScriptStack implements JavaScriptStack {
19  
20  
21      private final List<Asset> jsStack;
22  
23      private final List<StylesheetLink> cssStack;
24  
25      private SymbolSource symbolSource;
26  
27  
28      public BootstrapJavaScriptStack(
29              final AssetSource assetSource,
30  
31              final SymbolSource symbolSource) {
32  
33  
34          this.jsStack = CollectionFactory.newList();
35          jsStack.add(0, assetSource.getContextAsset("scripts/jquery.noconflict.js", null));
36          jsStack.add(0, assetSource.getContextAsset("scripts/lib/jquery-1.7.1.min.js", null));
37          jsStack.add(assetSource.getContextAsset("scripts/lib/bootstrap.js", null));
38          jsStack.add(assetSource.getContextAsset("scripts/lib/plugins/jquery.cookie.js", null));
39          jsStack.add(assetSource.getContextAsset("scripts/script.js", null));
40  
41  
42          this.cssStack = CollectionFactory.newList();
43          cssStack.add(new StylesheetLink(assetSource.getContextAsset("styles/lib/bootstrap.min.css", null)));
44          cssStack.add(new StylesheetLink(assetSource.getContextAsset("styles/lib/bootstrap-responsive.min.css", null)));
45          cssStack.add(new StylesheetLink(assetSource.getContextAsset("styles/style.css", null)));
46          cssStack.add(new StylesheetLink(assetSource.getContextAsset("styles/t5-override.css", null)));
47  
48      }
49  
50      public List<String> getStacks() {
51          return Collections.emptyList();
52  
53      }
54  
55      public List<Asset> getJavaScriptLibraries() {
56          return jsStack;
57      }
58  
59      public List<StylesheetLink> getStylesheets() {
60          return cssStack;
61      }
62  
63      public String getInitialization() {
64          return null;
65      }
66  }