+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>com.googlecode.gwtquery</groupId>
- <artifactId>gwtquery-project</artifactId>
- <version>1.4.0-SNAPSHOT</version>
- </parent>
-
- <description>Generates an artifact compiled with a concrete gwt version specified in the artifactId</description>
- <artifactId>2.0.1</artifactId>
- <packaging>jar</packaging>
- <name>Gwt Query Core API for gwt-${artifactId}</name>
-
- <dependencies>
- <dependency>
- <groupId>com.googlecode.gwtquery</groupId>
- <artifactId>gwtquery</artifactId>
- <version>${version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>com.google.gwt</groupId>
- <artifactId>gwt-user</artifactId>
- <version>${artifactId}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>com.google.gwt</groupId>
- <artifactId>gwt-dev</artifactId>
- <version>${artifactId}</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <finalName>gwtquery-${version}-${artifactId}</finalName>
- <plugins>
-
- <plugin>
- <artifactId>maven-deploy-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
-
- <plugin>
- <artifactId>maven-gpg-plugin</artifactId>
- <executions>
- <execution>
- <id>deploy-jar</id>
- <phase>deploy</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>${project.build.directory}/gwtquery-${version}-${artifactId}.jar</file>
- <repositoryId>${repoId}</repositoryId>
- <url>${repoUrl}</url>
- <packaging>jar</packaging>
- <artifactId>gwtquery</artifactId>
- <groupId>${groupId}</groupId>
- <version>${version}</version>
- <classifier>${artifactId}</classifier>
- <pomFile>./target/generated-resources/META-INF/maven/com.googlecode.gwtquery/gwtquery/pom.xml</pomFile>
- </configuration>
- </execution>
- <execution>
- <id>deploy-src</id>
- <phase>deploy</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>${project.build.directory}/gwtquery-${version}-${artifactId}-sources.jar</file>
- <repositoryId>${repoId}</repositoryId>
- <url>${repoUrl}</url>
- <packaging>jar</packaging>
- <artifactId>gwtquery</artifactId>
- <groupId>${groupId}</groupId>
- <version>${version}</version>
- <classifier>${artifactId}-sources</classifier>
- <pomFile>./target/generated-resources/META-INF/maven/com.googlecode.gwtquery/gwtquery/pom.xml</pomFile>
- </configuration>
- </execution>
- <execution>
- <id>deploy-doc</id>
- <phase>deploy</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>${project.build.directory}/gwtquery-${version}-${artifactId}-javadoc.jar</file>
- <repositoryId>${repoId}</repositoryId>
- <url>${repoUrl}</url>
- <packaging>jar</packaging>
- <artifactId>gwtquery</artifactId>
- <groupId>${groupId}</groupId>
- <version>${version}</version>
- <classifier>${artifactId}-javadoc</classifier>
- <pomFile>./target/generated-resources/META-INF/maven/com.googlecode.gwtquery/gwtquery/pom.xml</pomFile>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <goals><goal>unpack-dependencies</goal></goals>
- <phase>generate-resources</phase>
- <configuration>
- <includeGroupIds>com.googlecode.gwtquery,com.googlecode.gwtquery.plugins</includeGroupIds>
- <includeArtifactIds>gwtquery</includeArtifactIds>
- <excludeTransitive>true</excludeTransitive>
- <includes>**/*.java,**/*.xml,**/*.html,**/*.css,**/*.jpg,**/*.png,**/*.gif</includes>
- <excludes>**/IFrameWithDocTypeLinker.java,**/SelectorGeneratorCssToXPath.java</excludes>
- <outputDirectory>${project.build.directory}/generated-resources</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <executions>
- <execution>
- <id>javadoc</id>
- <phase>prepare-package</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-source-plugin</artifactId>
- <executions>
- <execution>
- <id>source</id>
- <phase>prepare-package</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>add-sources</id>
- <phase>generate-sources</phase>
- <goals>
- <goal>add-source</goal>
- </goals>
- <configuration>
- <sources>
- <source>${project.build.directory}/generated-resources</source>
- </sources>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- </plugins>
-
- <resources>
- <resource>
- <directory>${project.build.directory}/generated-resources/</directory>
- </resource>
- </resources>
-
- </build>
-</project>
+++ /dev/null
-/*
- * 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.core.client;
-
-/**
- * A simple wrapper around an heterogeneous native array of values.
- *
- * This class may not be directly instantiated, and can only be returned from a
- * native method. For example,
- *
- * <code>
- * native JsArrayMixed getNativeArray() /*-{
- * return [
- * { x: 0, y: 1},
- * "apple",
- * 12345,
- * ];
- * }-* /;
- * </code>
- */
-public class JsArrayMixed extends JavaScriptObject {
-
- protected JsArrayMixed() {
- }
-
- /**
- * Gets the boolean at a given index.
- *
- * @param index the index to be retrieved
- * @return the object at the given index, or <code>null</code> if none exists
- */
- public final native boolean getBoolean(int index) /*-{
- return Boolean(this[index]);
- }-*/;
-
- /**
- * Gets the double at a given index.
- *
- * @param index the index to be retrieved
- * @return the object at the given index, or <code>null</code> if none exists
- */
- public final native double getNumber(int index) /*-{
- return Number(this[index]);
- }-*/;
-
- /**
- * Gets the {@link JavaScriptObject} at a given index.
- *
- * @param index the index to be retrieved
- * @return the {@code JavaScriptObject} at the given index, or
- * <code>null</code> if none exists
- */
- public final native <T extends JavaScriptObject> T getObject(int index) /*-{
- return this[index] != null ? Object(this[index]) : null;
- }-*/;
-
- /**
- * Gets the String at a given index.
- *
- * @param index the index to be retrieved
- * @return the object at the given index, or <code>null</code> if none exists
- */
- public final native String getString(int index) /*-{
- return String(this[index]);
- }-*/;
-
- /**
- * Convert each element of the array to a String and join them with a comma
- * separator. The value returned from this method may vary between browsers
- * based on how JavaScript values are converted into strings.
- */
- public final String join() {
- // As per JS spec
- return join(",");
- }
-
- /**
- * Convert each element of the array to a String and join them with a comma
- * separator. The value returned from this method may vary between browsers
- * based on how JavaScript values are converted into strings.
- */
- public final native String join(String separator) /*-{
- return this.join(separator);
- }-*/;
-
- /**
- * Gets the length of the array.
- *
- * @return the array length
- */
- public final native int length() /*-{
- return this.length;
- }-*/;
-
- /**
- * Pushes the given boolean onto the end of the array.
- */
- public final native void push(boolean value) /*-{
- this[this.length] = value;
- }-*/;
-
- /**
- * Pushes the given double onto the end of the array.
- */
- public final native void push(double value) /*-{
- this[this.length] = value;
- }-*/;
-
- /**
- * Pushes the given {@link JavaScriptObject} onto the end of the array.
- */
- public final native void push(JavaScriptObject value) /*-{
- this[this.length] = value;
- }-*/;
-
- /**
- * Pushes the given String onto the end of the array.
- */
- public final native void push(String value) /*-{
- this[this.length] = value;
- }-*/;
-
- /**
- * Sets the boolean value at a given index.
- *
- * If the index is out of bounds, the value will still be set. The array's
- * length will be updated to encompass the bounds implied by the added value.
- *
- * @param index the index to be set
- * @param value the boolean to be stored
- */
- public final native void set(int index, boolean value) /*-{
- this[index] = value;
- }-*/;
-
- /**
- * Sets the double value at a given index.
- *
- * If the index is out of bounds, the value will still be set. The array's
- * length will be updated to encompass the bounds implied by the added value.
- *
- * @param index the index to be set
- * @param value the double to be stored
- */
- public final native void set(int index, double value) /*-{
- this[index] = value;
- }-*/;
-
- /**
- * Sets the object value at a given index.
- *
- * If the index is out of bounds, the value will still be set. The array's
- * length will be updated to encompass the bounds implied by the added object.
- *
- * @param index the index to be set
- * @param value the {@link JavaScriptObject} to be stored
- */
- public final native void set(int index, JavaScriptObject value) /*-{
- this[index] = value;
- }-*/;
-
- /**
- * Sets the String value at a given index.
- *
- * If the index is out of bounds, the value will still be set. The array's
- * length will be updated to encompass the bounds implied by the added String.
- *
- * @param index the index to be set
- * @param value the String to be stored
- */
- public final native void set(int index, String value) /*-{
- this[index] = value;
- }-*/;
-
- /**
- * Reset the length of the array.
- *
- * @param newLength the new length of the array
- */
- public final native void setLength(int newLength) /*-{
- this.length = newLength;
- }-*/;
-
- /**
- * Shifts the first value off the array.
- *
- * @return the shifted boolean
- */
- public final native boolean shiftBoolean() /*-{
- return Boolean(this.shift());
- }-*/;
-
- /**
- * Shifts the first value off the array.
- *
- * @return the shifted double
- */
- public final native double shiftNumber() /*-{
- return Number(this.shift());
- }-*/;
-
- /**
- * Shifts the first value off the array.
- *
- * @return the shifted {@link JavaScriptObject}
- */
- public final native <T extends JavaScriptObject> T shiftObject() /*-{
- return Object(this.shift());
- }-*/;
-
- /**
- * Shifts the first value off the array.
- *
- * @return the shifted String
- */
- public final native String shiftString() /*-{
- return String(this.shift());
- }-*/;
-
- /**
- * Shifts a boolean onto the beginning of the array.
- *
- * @param value the value to the stored
- */
- public final native void unshift(boolean value) /*-{
- this.unshift(value);
- }-*/;
-
- /**
- * Shifts a double onto the beginning of the array.
- *
- * @param value the value to store
- */
- public final native void unshift(double value) /*-{
- this.unshift(value);
- }-*/;
-
- /**
- * Shifts a {@link JavaScriptObject} onto the beginning of the array.
- *
- * @param value the value to store
- */
- public final native void unshift(JavaScriptObject value) /*-{
- this.unshift(value);
- }-*/;
-
- /**
- * Shifts a String onto the beginning of the array.
- *
- * @param value the value to store
- */
- public final native void unshift(String value) /*-{
- this.unshift(value);
- }-*/;
-
-}
+++ /dev/null
-/*
- * Copyright 2009 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.query.linker;
-
-import com.google.gwt.core.ext.LinkerContext;
-import com.google.gwt.core.ext.TreeLogger;
-import com.google.gwt.core.linker.IFrameLinker;
-import com.google.gwt.core.ext.linker.LinkerOrder;
-
-/**
- * Adds doctype to the iframe used to load the application.
- * Without this code, IE8 does not enable document.querySelectorAll feature.
- */
-@LinkerOrder(LinkerOrder.Order.PRIMARY)
-public class IFrameWithDocTypeLinker extends IFrameLinker {
-
- private static final String DOCTYPE = "<!doctype html>\n";
-
- protected String getModulePrefix(TreeLogger logger, LinkerContext context,
- String strongName) {
- return DOCTYPE + super.getModulePrefix(logger, context, strongName);
- }
-
- @Override
- protected String getModulePrefix(TreeLogger logger, LinkerContext context,
- String strongName, int numFragments) {
- return DOCTYPE
- + super.getModulePrefix(logger, context, strongName, numFragments);
- }
-}
-
+++ /dev/null
-/*
- * Copyright 2011, The gwtquery team.
- *
- * 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.query.rebind;
-
-import java.util.ArrayList;
-import java.util.regex.MatchResult;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import javax.xml.xpath.XPath;
-import javax.xml.xpath.XPathExpressionException;
-import javax.xml.xpath.XPathFactory;
-
-import com.google.gwt.core.ext.TreeLogger;
-import com.google.gwt.core.ext.UnableToCompleteException;
-import com.google.gwt.core.ext.typeinfo.JMethod;
-import com.google.gwt.query.client.Selector;
-import com.google.gwt.query.client.impl.SelectorEngineCssToXPath;
-import com.google.gwt.query.client.impl.SelectorEngineCssToXPath.ReplaceCallback;
-import com.google.gwt.query.client.impl.SelectorEngineCssToXPath.Replacer;
-import com.google.gwt.user.rebind.SourceWriter;
-
-/**
- * Compile time selector generator which translates selector into XPath at
- * compile time. It Uses the SelectorEngineCssToXpath to produce the xpath
- * selectors
- */
-public class SelectorGeneratorCssToXPath extends SelectorGeneratorBase {
-
- /**
- * The replacer implementation for the JVM.
- */
- public static final Replacer replacerJvm = new Replacer() {
- public String replaceAll(String s, String r, Object o) {
- Pattern p = Pattern.compile(r);
- if (o instanceof ReplaceCallback) {
- final Matcher matcher = p.matcher(s);
- ReplaceCallback callback = (ReplaceCallback) o;
- while (matcher.find()) {
- final MatchResult matchResult = matcher.toMatchResult();
- ArrayList<String> argss = new ArrayList<String>();
- for (int i = 0; i < matchResult.groupCount() + 1; i++) {
- argss.add(matchResult.group(i));
- }
- final String replacement = callback.foundMatch(argss);
- s = s.substring(0, matchResult.start()) + replacement
- + s.substring(matchResult.end());
- matcher.reset(s);
- }
- return s;
- } else {
- return p.matcher(s).replaceAll(o.toString());
- }
- }
- };
-
- public static final Replacer replacer = replacerJvm;
-
- private SelectorEngineCssToXPath engine = new SelectorEngineCssToXPath(
- replacer);
-
- protected String css2Xpath(String s) {
- return engine.css2Xpath(s);
- }
-
- private XPathFactory factory = XPathFactory.newInstance();
- private XPath xpath = factory.newXPath();
-
- protected void generateMethodBody(SourceWriter sw, JMethod method,
- TreeLogger treeLogger, boolean hasContext)
- throws UnableToCompleteException {
-
- String selector = method.getAnnotation(Selector.class).value();
- String xselector = css2Xpath(selector);
-
- // Validate the generated xpath selector.
- try {
- validateXpath(xselector);
- } catch (XPathExpressionException e1) {
- System.err.println("Invalid XPath generated selector, please revise it: " + xselector);
- if (!selector.equals(xselector)) {
- System.err.println("If your css2 selector syntax is correct, open an issue in the gwtquery project. cssselector:"
- + selector + " xpath:" + xselector);
- }
- throw new UnableToCompleteException();
- }
-
- sw.println("return "
- + wrap(method, "xpathEvaluate(\"" + xselector + "\", root)") + ";");
- }
-
- public void validateXpath(String xselector) throws XPathExpressionException {
- xpath.compile(xselector);
- }
-
- protected String getImplSuffix() {
- return "CssToXPath" + super.getImplSuffix();
- }
-}
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>com.googlecode.gwtquery</groupId>
- <artifactId>gwtquery-project</artifactId>
- <version>1.4.0-SNAPSHOT</version>
- </parent>
-
- <description>Generates an artifact compiled with a concrete gwt version specified in the artifactId</description>
- <artifactId>2.1.0</artifactId>
- <packaging>jar</packaging>
- <name>Gwt Query Core API for gwt-${artifactId}</name>
-
- <dependencies>
- <dependency>
- <groupId>com.googlecode.gwtquery</groupId>
- <artifactId>gwtquery</artifactId>
- <version>${version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>com.google.gwt</groupId>
- <artifactId>gwt-user</artifactId>
- <version>${artifactId}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>com.google.gwt</groupId>
- <artifactId>gwt-dev</artifactId>
- <version>${artifactId}</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <finalName>gwtquery-${version}-${artifactId}</finalName>
- <plugins>
-
- <plugin>
- <artifactId>maven-deploy-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
-
- <plugin>
- <artifactId>maven-gpg-plugin</artifactId>
- <executions>
- <execution>
- <id>deploy-jar</id>
- <phase>deploy</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>${project.build.directory}/gwtquery-${version}-${artifactId}.jar</file>
- <repositoryId>${repoId}</repositoryId>
- <url>${repoUrl}</url>
- <packaging>jar</packaging>
- <artifactId>gwtquery</artifactId>
- <groupId>${groupId}</groupId>
- <version>${version}</version>
- <classifier>${artifactId}</classifier>
- <pomFile>./target/generated-resources/META-INF/maven/com.googlecode.gwtquery/gwtquery/pom.xml</pomFile>
- </configuration>
- </execution>
- <execution>
- <id>deploy-src</id>
- <phase>deploy</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>${project.build.directory}/gwtquery-${version}-${artifactId}-sources.jar</file>
- <repositoryId>${repoId}</repositoryId>
- <url>${repoUrl}</url>
- <packaging>jar</packaging>
- <artifactId>gwtquery</artifactId>
- <groupId>${groupId}</groupId>
- <version>${version}</version>
- <classifier>${artifactId}-sources</classifier>
- <pomFile>./target/generated-resources/META-INF/maven/com.googlecode.gwtquery/gwtquery/pom.xml</pomFile>
- </configuration>
- </execution>
- <execution>
- <id>deploy-doc</id>
- <phase>deploy</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>${project.build.directory}/gwtquery-${version}-${artifactId}-javadoc.jar</file>
- <repositoryId>${repoId}</repositoryId>
- <url>${repoUrl}</url>
- <packaging>jar</packaging>
- <artifactId>gwtquery</artifactId>
- <groupId>${groupId}</groupId>
- <version>${version}</version>
- <classifier>${artifactId}-javadoc</classifier>
- <pomFile>./target/generated-resources/META-INF/maven/com.googlecode.gwtquery/gwtquery/pom.xml</pomFile>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <goals><goal>unpack-dependencies</goal></goals>
- <phase>generate-resources</phase>
- <configuration>
- <includeGroupIds>com.googlecode.gwtquery,com.googlecode.gwtquery.plugins</includeGroupIds>
- <includeArtifactIds>gwtquery</includeArtifactIds>
- <excludeTransitive>true</excludeTransitive>
- <includes>**/*.java,**/*.xml,**/*.html,**/*.css,**/*.jpg,**/*.png,**/*.gif</includes>
- <outputDirectory>${project.build.directory}/generated-resources</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <executions>
- <execution>
- <id>javadoc</id>
- <phase>prepare-package</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-source-plugin</artifactId>
- <executions>
- <execution>
- <id>source</id>
- <phase>prepare-package</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>add-sources</id>
- <phase>generate-sources</phase>
- <goals>
- <goal>add-source</goal>
- </goals>
- <configuration>
- <sources>
- <source>${project.build.directory}/generated-resources</source>
- </sources>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- </plugins>
-
- <resources>
- <resource>
- <directory>${project.build.directory}/generated-resources/</directory>
- </resource>
- </resources>
-
- </build>
-</project>