Fixing svn bug
git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/tabular-data-expression-widget@90230 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
aac25e9e4d
commit
d09427353a
|
@ -0,0 +1,37 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" output="target/tabular-data-expression-widget-1.0.0-SNAPSHOT/WEB-INF/classes" path="src/main/java">
|
||||
<attributes>
|
||||
<attribute name="optional" value="true"/>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry excluding="**" kind="src" output="target/tabular-data-expression-widget-1.0.0-SNAPSHOT/WEB-INF/classes" path="src/main/resources">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="target/test-classes" path="src/test/java">
|
||||
<attributes>
|
||||
<attribute name="optional" value="true"/>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="output" path="target/tabular-data-expression-widget-1.0.0-SNAPSHOT/WEB-INF/classes"/>
|
||||
</classpath>
|
|
@ -0,0 +1,53 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>tabular-data-expression-widget</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.wst.common.project.facet.core.builder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.wst.validation.validationbuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>com.google.gdt.eclipse.core.webAppProjectValidator</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>com.google.gwt.eclipse.core.gwtProjectValidator</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.m2e.core.maven2Builder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
|
||||
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
<nature>org.eclipse.m2e.core.maven2Nature</nature>
|
||||
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
|
||||
<nature>com.google.gwt.eclipse.core.gwtNature</nature>
|
||||
<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="target/m2e-wtp/web-resources"/>
|
||||
<classpathentry kind="src" path="src/main/webapp"/>
|
||||
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/>
|
||||
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject">
|
||||
<attributes>
|
||||
<attribute name="hide" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary"/>
|
||||
<classpathentry kind="output" path=""/>
|
||||
</classpath>
|
|
@ -0,0 +1,4 @@
|
|||
eclipse.preferences.version=1
|
||||
filesCopiedToWebInfLib=
|
||||
googleCloudSqlEnabled=false
|
||||
localDevMySqlEnabled=true
|
|
@ -0,0 +1,5 @@
|
|||
eclipse.preferences.version=1
|
||||
jarsExcludedFromWebInfLib=
|
||||
lastWarOutDir=/home/giancarlo/workspace/tabular-data-expression-widget/target/tabular-data-expression-widget-1.0.0-SNAPSHOT
|
||||
warSrcDir=src/main/webapp
|
||||
warSrcDirIsOutput=false
|
|
@ -0,0 +1,3 @@
|
|||
eclipse.preferences.version=1
|
||||
entryPointModules=
|
||||
filesCopiedToWebInfLib=
|
|
@ -0,0 +1,6 @@
|
|||
eclipse.preferences.version=1
|
||||
encoding//src/main/java=UTF-8
|
||||
encoding//src/main/resources=UTF-8
|
||||
encoding//src/test/java=UTF-8
|
||||
encoding//src/test/resources=UTF-8
|
||||
encoding/<project>=UTF-8
|
|
@ -0,0 +1,8 @@
|
|||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
|
||||
org.eclipse.jdt.core.compiler.compliance=1.5
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
|
||||
org.eclipse.jdt.core.compiler.source=1.5
|
|
@ -0,0 +1,4 @@
|
|||
activeProfiles=
|
||||
eclipse.preferences.version=1
|
||||
resolveWorkspaceProjects=true
|
||||
version=1
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
|
||||
<wb-module deploy-name="tabular-data-expression-widget">
|
||||
<wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>
|
||||
<wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
|
||||
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
|
||||
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
|
||||
<dependent-module archiveName="tabular-data-widget-common-event-1.0.0-SNAPSHOT.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/tabular-data-widget-common-event/tabular-data-widget-common-event">
|
||||
<dependency-type>uses</dependency-type>
|
||||
</dependent-module>
|
||||
<property name="java-output-path" value="/tabular-data-expression-widget/target/tabular-data-expression-widget-1.0.0-SNAPSHOT/WEB-INF/classes"/>
|
||||
<property name="context-root" value="tabular-data-expression-widget"/>
|
||||
</wb-module>
|
||||
</project-modules>
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<faceted-project>
|
||||
<fixed facet="wst.jsdt.web"/>
|
||||
<installed facet="java" version="1.5"/>
|
||||
<installed facet="jst.web" version="2.3"/>
|
||||
<installed facet="wst.jsdt.web" version="1.0"/>
|
||||
</faceted-project>
|
|
@ -0,0 +1 @@
|
|||
org.eclipse.wst.jsdt.launching.baseBrowserLibrary
|
|
@ -0,0 +1 @@
|
|||
Window
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="com.google.gdt.eclipse.suite.webapp">
|
||||
<stringAttribute key="com.google.gdt.eclipse.suiteMainTypeProcessor.PREVIOUSLY_SET_MAIN_TYPE_NAME" value="com.google.gwt.dev.DevMode"/>
|
||||
<booleanAttribute key="com.google.gdt.eclipse.suiteWarArgumentProcessor.IS_WAR_FROM_PROJECT_PROPERTIES" value="true"/>
|
||||
<stringAttribute key="com.google.gwt.eclipse.core.URL" value="ExpressionWidget.html"/>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/tabular-data-expression-widget"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||
<listEntry value="4"/>
|
||||
</listAttribute>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="com.google.gdt.eclipse.maven.mavenClasspathProvider"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="com.google.gwt.dev.DevMode"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-remoteUI "${gwt_remote_ui_server_port}:${unique_id}" -startupUrl ExpressionWidget.html -logLevel INFO -codeServerPort 9997 -port 8888 -war /home/giancarlo/workspace/tabular-data-expression-widget/target/tabular-data-expression-widget-1.0.0-SNAPSHOT org.gcube.portlets.user.td.expressionwidget.ExpressionWidget"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="tabular-data-expression-widget"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512m -Dgwt.nowarn.legacy.tools"/>
|
||||
</launchConfiguration>
|
|
@ -0,0 +1,297 @@
|
|||
<?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">
|
||||
|
||||
<parent>
|
||||
<artifactId>maven-parent</artifactId>
|
||||
<groupId>org.gcube.tools</groupId>
|
||||
<version>1.0.0</version>
|
||||
<relativePath />
|
||||
</parent>
|
||||
|
||||
<!-- POM file generated with GWT webAppCreator -->
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.gcube.portlets.user</groupId>
|
||||
<artifactId>tabular-data-expression-widget</artifactId>
|
||||
<version>1.0.0-SNAPSHOT</version>
|
||||
|
||||
|
||||
<name>tabular-data-expression-widget</name>
|
||||
<description>tabular-data-expression-widget allows to create expression on column of table</description>
|
||||
|
||||
<scm>
|
||||
<url>https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/tabular-data-expression-widget</url>
|
||||
</scm>
|
||||
|
||||
<developers>
|
||||
<developer>
|
||||
<name>Giancarlo Panichi</name>
|
||||
<email>g.panichi@isti.cnr.it</email>
|
||||
<organization>CNR Pisa, Istituto di Scienza e Tecnologie dell'Informazione "A. Faedo"</organization>
|
||||
<roles>
|
||||
<role>architect</role>
|
||||
<role>developer</role>
|
||||
</roles>
|
||||
</developer>
|
||||
</developers>
|
||||
|
||||
<properties>
|
||||
<distroDirectory>${project.basedir}/distro</distroDirectory>
|
||||
<webappDirectory>${project.build.directory}/${project.build.finalName}</webappDirectory>
|
||||
<release.date>2013-10-18</release.date>
|
||||
<templatesDirectory>templates</templatesDirectory>
|
||||
<distroDirectory>distro</distroDirectory>
|
||||
<configDirectory>config</configDirectory>
|
||||
|
||||
<!-- Convenience property to set the GWT version -->
|
||||
<gwtVersion>2.5.1</gwtVersion>
|
||||
<!-- To make this work on gwt-run you need to set up global env vars. on
|
||||
MacOSX edit this file /etc/launchd.conf and put "setenv GLOBUS_LOCATION /Users/massi/portal/Portal-Bundle/gCore"
|
||||
on Linux? -->
|
||||
<GLOBUS_LOCATION>${env.GLOBUS_LOCATION}</GLOBUS_LOCATION>
|
||||
<!-- GWT needs at least java 1.5 -->
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||
</properties>
|
||||
|
||||
|
||||
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>localRun</id>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>ch.qos.logback</groupId>
|
||||
<artifactId>logback-classic</artifactId>
|
||||
<version>1.0.1</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.google.gwt</groupId>
|
||||
<artifactId>gwt-servlet</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.google.gwt</groupId>
|
||||
<artifactId>gwt-user</artifactId>
|
||||
</dependency>
|
||||
|
||||
|
||||
<dependency>
|
||||
<groupId>javax.validation</groupId>
|
||||
<artifactId>validation-api</artifactId>
|
||||
<version>1.0.0.GA</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.validation</groupId>
|
||||
<artifactId>validation-api</artifactId>
|
||||
<version>1.0.0.GA</version>
|
||||
<classifier>sources</classifier>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.sencha.gxt</groupId>
|
||||
<artifactId>gxt</artifactId>
|
||||
<version>3.0.1</version>
|
||||
</dependency>
|
||||
|
||||
<!-- tabular-data-wizard-widget
|
||||
<dependency>
|
||||
<groupId>org.gcube.portlets.user</groupId>
|
||||
<artifactId>tabular-data-wizard-widget</artifactId>
|
||||
<version>[1.0.0-SNAPSHOT,2.0.0-SNAPSHOT)</version>
|
||||
</dependency>
|
||||
-->
|
||||
|
||||
|
||||
<!-- tabular-data-gwt-service -->
|
||||
<dependency>
|
||||
<groupId>org.gcube.portlets.user</groupId>
|
||||
<artifactId>tabular-data-gwt-service</artifactId>
|
||||
<version>[2.0.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
<!-- LOGGING -->
|
||||
<dependency>
|
||||
<groupId>com.allen-sauer.gwt.log</groupId>
|
||||
<artifactId>gwt-log</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<!-- <scope>compile</scope> -->
|
||||
</dependency>
|
||||
|
||||
<!-- JUNIT -->
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.8.1</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
|
||||
</dependencies>
|
||||
|
||||
|
||||
|
||||
<build>
|
||||
<!-- Generate compiled stuff in the folder used for developing mode -->
|
||||
<outputDirectory>${webappDirectory}/WEB-INF/classes</outputDirectory>
|
||||
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<version>2.16</version>
|
||||
<configuration>
|
||||
<skipTests>true</skipTests>
|
||||
</configuration>
|
||||
<!-- TODO check if needed -->
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.surefire</groupId>
|
||||
<artifactId>surefire-junit47</artifactId>
|
||||
<version>2.16</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</plugin>
|
||||
|
||||
<!-- GWT Maven Plugin -->
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>gwt-maven-plugin</artifactId>
|
||||
<version>${gwtVersion}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>resources</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<runTarget>ExpressionWidget.html</runTarget>
|
||||
<hostedWebapp>${webappDirectory}</hostedWebapp>
|
||||
<module>org.gcube.portlets.user.td.expressionwidget.ExpressionWidget</module>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<!-- Maven -->
|
||||
<plugin>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
<version>2.6</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>copy-profile</id>
|
||||
<phase>process-resources</phase>
|
||||
<goals>
|
||||
<goal>copy-resources</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<outputDirectory>${configDirectory}</outputDirectory>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>${templatesDirectory}</directory>
|
||||
<includes>
|
||||
<include>profile.xml</include>
|
||||
</includes>
|
||||
<filtering>true</filtering>
|
||||
</resource>
|
||||
</resources>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>copy-distro-resources</id>
|
||||
<phase>process-resources</phase>
|
||||
<goals>
|
||||
<goal>copy-resources</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<outputDirectory>${distroDirectory}</outputDirectory>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>${templatesDirectory}</directory>
|
||||
<excludes>
|
||||
<exclude>profile.xml</exclude>
|
||||
<exclude>descriptor.xml</exclude>
|
||||
</excludes>
|
||||
<filtering>true</filtering>
|
||||
</resource>
|
||||
</resources>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-clean-plugin</artifactId>
|
||||
<version>2.5</version>
|
||||
<configuration>
|
||||
<filesets>
|
||||
<fileset>
|
||||
<directory>${distroDirectory}</directory>
|
||||
<includes>
|
||||
<include>**</include>
|
||||
</includes>
|
||||
<followSymlinks>false</followSymlinks>
|
||||
</fileset>
|
||||
<fileset>
|
||||
<directory>${configDirectory}</directory>
|
||||
<includes>
|
||||
<include>**</include>
|
||||
</includes>
|
||||
<followSymlinks>false</followSymlinks>
|
||||
</fileset>
|
||||
</filesets>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-assembly-plugin</artifactId>
|
||||
<version>2.2</version>
|
||||
<configuration>
|
||||
<descriptors>
|
||||
<descriptor>${templatesDirectory}/descriptor.xml</descriptor>
|
||||
</descriptors>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>servicearchive</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>single</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
|
||||
</plugins>
|
||||
|
||||
</build>
|
||||
<dependencyManagement>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.gcube.distribution</groupId>
|
||||
<artifactId>maven-portal-bom</artifactId>
|
||||
<version>LATEST</version>
|
||||
<type>pom</type>
|
||||
<scope>import</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</dependencyManagement>
|
||||
<packaging>war</packaging>
|
||||
</project>
|
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module rename-to='ExpressionWidget'>
|
||||
<!-- Inherit the core Web Toolkit stuff. -->
|
||||
<inherits name='com.google.gwt.user.User' />
|
||||
|
||||
<!-- We need the JUnit module in the main module, -->
|
||||
<!-- otherwise eclipse complains (Google plugin bug?) -->
|
||||
<inherits name='com.google.gwt.junit.JUnit' />
|
||||
|
||||
<!-- Inherit the default GWT style sheet. You can change -->
|
||||
<!-- the theme of your GWT application by uncommenting -->
|
||||
<!-- any one of the following lines. -->
|
||||
<inherits name='com.google.gwt.user.theme.standard.Standard' />
|
||||
<!-- <inherits name='com.google.gwt.user.theme.chrome.Chrome'/> -->
|
||||
<!-- <inherits name='com.google.gwt.user.theme.dark.Dark'/> -->
|
||||
|
||||
<!-- Other module inherits -->
|
||||
<inherits name='com.sencha.gxt.ui.GXT' />
|
||||
<inherits name="com.allen_sauer.gwt.log.gwt-log-TRACE" />
|
||||
<inherits name='org.gcube.portlets.user.td.gwtservice.TDGWTService' />
|
||||
|
||||
|
||||
|
||||
<!-- Specify the app entry point class. -->
|
||||
<entry-point class='org.gcube.portlets.user.td.expressionwidget.client.ExpressionWidgetEntry' />
|
||||
|
||||
<!-- Specify the paths for translatable code -->
|
||||
<source path='client' />
|
||||
<source path='shared' />
|
||||
|
||||
|
||||
</module>
|
|
@ -0,0 +1,190 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.client;
|
||||
|
||||
import org.gcube.portlets.user.td.gwtservice.client.rpc.TDGWTServiceAsync;
|
||||
import org.gcube.portlets.user.td.gwtservice.shared.tr.ColumnData;
|
||||
import org.gcube.portlets.user.td.widgetcommonevent.shared.TRId;
|
||||
|
||||
import com.allen_sauer.gwt.log.client.Log;
|
||||
import com.google.gwt.user.client.rpc.AsyncCallback;
|
||||
import com.sencha.gxt.core.client.dom.ScrollSupport.ScrollMode;
|
||||
import com.sencha.gxt.widget.core.client.FramedPanel;
|
||||
import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer;
|
||||
import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer.VerticalLayoutData;
|
||||
import com.sencha.gxt.widget.core.client.form.FieldLabel;
|
||||
import com.sencha.gxt.widget.core.client.form.TextArea;
|
||||
import com.sencha.gxt.widget.core.client.form.TextField;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class ColumnExpressionPanel extends FramedPanel {
|
||||
protected TRId trId;
|
||||
protected String columnName=null;
|
||||
protected ColumnData column;
|
||||
//protected ComboBox<ColumnData> combo=null;
|
||||
|
||||
/**
|
||||
*
|
||||
* @param columnTypeCode
|
||||
* @param dataTypeName
|
||||
*/
|
||||
public ColumnExpressionPanel(String columnId, String columnTypeCode, String dataTypeName) {
|
||||
column=new ColumnData();
|
||||
column.setColumnId(columnId);
|
||||
column.setDataTypeName(dataTypeName);
|
||||
column.setTypeCode(columnTypeCode);
|
||||
create();
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param trId
|
||||
* @param columnName
|
||||
*/
|
||||
public ColumnExpressionPanel(TRId trId, String columnName) {
|
||||
this.trId=trId;
|
||||
this.columnName=columnName;
|
||||
load(trId, columnName);
|
||||
}
|
||||
|
||||
protected void create() {
|
||||
setBodyBorder(false);
|
||||
// getHeader().setIcon(Resources.IMAGES.side_list());
|
||||
setWidth(400);
|
||||
setHeight(400);
|
||||
setResize(true);
|
||||
|
||||
VerticalLayoutContainer basicLayout = new VerticalLayoutContainer();
|
||||
basicLayout.setScrollMode(ScrollMode.AUTO);
|
||||
basicLayout.setAdjustForScroll(true);
|
||||
|
||||
|
||||
TextField nome= new TextField();
|
||||
basicLayout.add(new FieldLabel(nome, "Nome"), new VerticalLayoutData(1, -1));
|
||||
|
||||
TextArea descrizione= new TextArea();
|
||||
basicLayout.add(new FieldLabel(descrizione, "Descrizione"), new VerticalLayoutData(1, -1));
|
||||
|
||||
|
||||
ConditionWidget conditionWidget =new ConditionWidget(column.getColumnId(), column.getTypeCode(), column.getDataTypeName());
|
||||
basicLayout.add(conditionWidget);
|
||||
|
||||
add(basicLayout);
|
||||
show();
|
||||
|
||||
/*
|
||||
ContentPanel panel = new ContentPanel();
|
||||
panel.setHeaderVisible(false);
|
||||
|
||||
//panel.setBodyStyle("margin: 0px;");
|
||||
|
||||
ColumnDataProperties props = GWT.create(ColumnDataProperties.class);
|
||||
ListStore<ColumnData> store = new ListStore<ColumnData>(props.id());
|
||||
|
||||
Log.trace("Store created");
|
||||
RpcProxy<ListLoadConfig, ListLoadResult<ColumnData>> proxy = new RpcProxy<ListLoadConfig, ListLoadResult<ColumnData>>() {
|
||||
|
||||
public void load(ListLoadConfig loadConfig, final AsyncCallback<ListLoadResult<ColumnData>> callback) {
|
||||
loadData(loadConfig, callback);
|
||||
}
|
||||
};
|
||||
final ListLoader<ListLoadConfig, ListLoadResult<ColumnData>> loader = new ListLoader<ListLoadConfig, ListLoadResult<ColumnData>>(proxy);
|
||||
loader.setRemoteSort(false);
|
||||
loader.addLoadHandler(new LoadResultListStoreBinding<ListLoadConfig, ColumnData, ListLoadResult<ColumnData>>(store));
|
||||
Log.trace("Loader created");
|
||||
|
||||
|
||||
combo = new ComboBox<ColumnData>(store,
|
||||
props.label()){
|
||||
@Override
|
||||
protected void onAfterFirstAttach() {
|
||||
super.onAfterFirstAttach();
|
||||
Scheduler.get().scheduleDeferred(new ScheduledCommand() {
|
||||
public void execute() {
|
||||
loader.load();
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
Log.trace("Combo created");
|
||||
|
||||
addHandlersForEventObservation(combo, props.label());
|
||||
|
||||
combo.setEmptyText("Select a column...");
|
||||
combo.setWidth(150);
|
||||
combo.setTypeAhead(true);
|
||||
combo.setTriggerAction(TriggerAction.ALL);
|
||||
combo.setLoader(loader);
|
||||
|
||||
FramedPanel form = new FramedPanel();
|
||||
form.setHeaderVisible(false);
|
||||
//form.setWidth(350);
|
||||
form.setBodyStyle("background: none;");
|
||||
|
||||
VerticalLayoutContainer v = new VerticalLayoutContainer();
|
||||
v.add(new FieldLabel(combo, "Column"), new VerticalLayoutData(1, -1));
|
||||
form.add(v);
|
||||
form.addButton(new TextButton("Remove"));
|
||||
|
||||
|
||||
panel.add(form);
|
||||
|
||||
basicLayout.add(panel, new VerticalLayoutData(-1, -1, new Margins()));
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
private <T> void addHandlersForEventObservation(ComboBox<T> combo,
|
||||
final LabelProvider<T> labelProvider) {
|
||||
combo.addValueChangeHandler(new ValueChangeHandler<T>() {
|
||||
|
||||
public void onValueChange(ValueChangeEvent<T> event) {
|
||||
Info.display(
|
||||
"Value Changed",
|
||||
"New value: "
|
||||
+ (event.getValue() == null ? "nothing"
|
||||
: labelProvider.getLabel(event
|
||||
.getValue()) + "!"));
|
||||
|
||||
}
|
||||
});
|
||||
combo.addSelectionHandler(new SelectionHandler<T>() {
|
||||
public void onSelection(SelectionEvent<T> event) {
|
||||
Info.display(
|
||||
"State Selected",
|
||||
"You selected "
|
||||
+ (event.getSelectedItem() == null ? "nothing"
|
||||
: labelProvider.getLabel(event
|
||||
.getSelectedItem()) + "!"));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
|
||||
|
||||
protected void load(TRId trId, String columnName) {
|
||||
TDGWTServiceAsync.INSTANCE.getColumn(trId,columnName, new AsyncCallback<ColumnData>(){
|
||||
|
||||
public void onFailure(Throwable caught) {
|
||||
Log.error("Error retrieving column: "+caught.getMessage());
|
||||
|
||||
}
|
||||
|
||||
public void onSuccess(ColumnData result) {
|
||||
Log.debug("Retrived column: "+result);
|
||||
column=result;
|
||||
create();
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,99 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.client;
|
||||
|
||||
import org.gcube.data.analysis.tabulardata.expression.Operator;
|
||||
import org.gcube.portlets.user.td.expressionwidget.client.operation.Operation;
|
||||
import org.gcube.portlets.user.td.expressionwidget.client.operation.OperationProperties;
|
||||
import org.gcube.portlets.user.td.expressionwidget.client.operation.OperationsStore;
|
||||
|
||||
import com.allen_sauer.gwt.log.client.Log;
|
||||
import com.google.gwt.core.client.GWT;
|
||||
import com.google.gwt.event.logical.shared.SelectionEvent;
|
||||
import com.google.gwt.event.logical.shared.SelectionHandler;
|
||||
import com.google.gwt.event.logical.shared.ValueChangeEvent;
|
||||
import com.google.gwt.event.logical.shared.ValueChangeHandler;
|
||||
import com.sencha.gxt.cell.core.client.form.ComboBoxCell.TriggerAction;
|
||||
import com.sencha.gxt.core.client.dom.ScrollSupport.ScrollMode;
|
||||
import com.sencha.gxt.core.client.util.Margins;
|
||||
import com.sencha.gxt.data.shared.LabelProvider;
|
||||
import com.sencha.gxt.data.shared.ListStore;
|
||||
import com.sencha.gxt.widget.core.client.container.HorizontalLayoutContainer;
|
||||
import com.sencha.gxt.widget.core.client.container.SimpleContainer;
|
||||
import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer;
|
||||
import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer.VerticalLayoutData;
|
||||
import com.sencha.gxt.widget.core.client.container.HorizontalLayoutContainer.HorizontalLayoutData;
|
||||
|
||||
import com.sencha.gxt.widget.core.client.form.ComboBox;
|
||||
import com.sencha.gxt.widget.core.client.info.Info;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class ConditionWidget extends SimpleContainer {
|
||||
protected Operator op;
|
||||
protected ComboBox<Operation> comboOp=null;
|
||||
|
||||
ConditionWidget(String columnPlaceHolderId,String columnTypeCode, String dataTypeName){
|
||||
VerticalLayoutContainer vert=new VerticalLayoutContainer();
|
||||
vert.setScrollMode(ScrollMode.AUTO);
|
||||
vert.setAdjustForScroll(true);
|
||||
|
||||
HorizontalLayoutContainer horiz=new HorizontalLayoutContainer();
|
||||
|
||||
OperationProperties props = GWT.create(OperationProperties.class);
|
||||
ListStore<Operation> storeOp = new ListStore<Operation>(props.id());
|
||||
storeOp.addAll(OperationsStore.getAll(dataTypeName));
|
||||
|
||||
Log.trace("Store created");
|
||||
|
||||
|
||||
comboOp = new ComboBox<Operation>(storeOp,
|
||||
props.label());
|
||||
|
||||
Log.trace("ComboOperation created");
|
||||
|
||||
addHandlersForEventObservation(comboOp, props.label());
|
||||
|
||||
comboOp.setEmptyText("Select a operation...");
|
||||
comboOp.setWidth(150);
|
||||
comboOp.setTypeAhead(true);
|
||||
comboOp.setTriggerAction(TriggerAction.ALL);
|
||||
|
||||
horiz.add(comboOp,new HorizontalLayoutData(-1, -1, new Margins(0)));
|
||||
|
||||
vert.add(horiz,new VerticalLayoutData(-1, -1, new Margins(0)));
|
||||
add(vert);
|
||||
}
|
||||
|
||||
private <T> void addHandlersForEventObservation(ComboBox<T> combo,
|
||||
final LabelProvider<T> labelProvider) {
|
||||
combo.addValueChangeHandler(new ValueChangeHandler<T>() {
|
||||
|
||||
public void onValueChange(ValueChangeEvent<T> event) {
|
||||
Info.display(
|
||||
"Value Changed",
|
||||
"New value: "
|
||||
+ (event.getValue() == null ? "nothing"
|
||||
: labelProvider.getLabel(event
|
||||
.getValue()) + "!"));
|
||||
|
||||
}
|
||||
});
|
||||
combo.addSelectionHandler(new SelectionHandler<T>() {
|
||||
public void onSelection(SelectionEvent<T> event) {
|
||||
Info.display(
|
||||
"State Selected",
|
||||
"You selected "
|
||||
+ (event.getSelectedItem() == null ? "nothing"
|
||||
: labelProvider.getLabel(event
|
||||
.getSelectedItem()) + "!"));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.client;
|
||||
|
||||
|
||||
|
||||
import org.gcube.portlets.user.td.widgetcommonevent.shared.TRId;
|
||||
|
||||
import com.allen_sauer.gwt.log.client.Log;
|
||||
import com.google.gwt.core.client.EntryPoint;
|
||||
import com.google.gwt.user.client.ui.RootPanel;
|
||||
import com.sencha.gxt.widget.core.client.Window;
|
||||
|
||||
public class ExpressionWidgetEntry implements EntryPoint {
|
||||
|
||||
|
||||
public void onModuleLoad() {
|
||||
TRId trId=new TRId();
|
||||
//For example Tabular Resource 1 and table 1
|
||||
trId.setId("1");
|
||||
trId.setTableId("1");
|
||||
|
||||
ColumnExpressionPanel expressionPanel=new ColumnExpressionPanel("0", "Attribute", "Integer");
|
||||
RootPanel.get().add(expressionPanel);
|
||||
|
||||
/*ChangeLabelColumnDialog changeLabel=new ChangeLabelColumnDialog(trId);
|
||||
changeLabel.show();
|
||||
ChangeToAnnotationColumnDialog changeToAnnotation=new ChangeToAnnotationColumnDialog(trId);
|
||||
changeToAnnotation.show();*/
|
||||
Log.info("Hello!");
|
||||
}
|
||||
}
|
|
@ -0,0 +1,73 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.client.operation;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class Operation implements Serializable{
|
||||
|
||||
private static final long serialVersionUID = 3713817747863556150L;
|
||||
|
||||
Integer id;
|
||||
String name;
|
||||
OperatorType operatorType;
|
||||
String label;
|
||||
|
||||
public Operation(Integer id,String name, String label, OperatorType operatorType){
|
||||
this.id=id;
|
||||
this.name=name;
|
||||
this.label=label;
|
||||
this.operatorType=operatorType;
|
||||
}
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public OperatorType getOperatorType() {
|
||||
return operatorType;
|
||||
}
|
||||
|
||||
public void setOperatorType(OperatorType operatorType) {
|
||||
this.operatorType = operatorType;
|
||||
}
|
||||
|
||||
public String getLabel() {
|
||||
return label;
|
||||
}
|
||||
|
||||
public void setLabel(String label) {
|
||||
this.label = label;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Operation [id=" + id + ", name=" + name + ", operatorType="
|
||||
+ operatorType + ", label=" + label + "]";
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.client.operation;
|
||||
|
||||
import com.google.gwt.editor.client.Editor.Path;
|
||||
import com.sencha.gxt.data.shared.LabelProvider;
|
||||
import com.sencha.gxt.data.shared.ModelKeyProvider;
|
||||
import com.sencha.gxt.data.shared.PropertyAccess;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public interface OperationProperties extends PropertyAccess<Operation> {
|
||||
|
||||
@Path("id")
|
||||
ModelKeyProvider<Operation> id();
|
||||
|
||||
LabelProvider<Operation> label();
|
||||
|
||||
}
|
|
@ -0,0 +1,86 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.client.operation;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class OperationsStore {
|
||||
static ArrayList<Operation> operations;
|
||||
|
||||
static ArrayList<Operation> operationsNumeric = new ArrayList<Operation>() {
|
||||
private static final long serialVersionUID = -6559885743626876431L;
|
||||
{
|
||||
add(new Operation(1,"EQUALS","Equals",OperatorType.EQUALS));
|
||||
add(new Operation(2,"GREATER","Greater",OperatorType.GREATER));
|
||||
add(new Operation(3,"GREATER_OR_EQUALS","Greater or equals",OperatorType.GREATER_OR_EQUALS));
|
||||
add(new Operation(4,"LESSER","Lesser",OperatorType.LESSER));
|
||||
add(new Operation(5,"LESSER_OR_EQUALS","Lesser or equals",OperatorType.LESSER_OR_EQUALS));
|
||||
add(new Operation(6,"NOT_EQUALS","Not equals",OperatorType.NOT_EQUALS));
|
||||
add(new Operation(7,"NOT_GREATER","Not greater",OperatorType.NOT_GREATER));
|
||||
add(new Operation(8,"NOT_LESSER","Not lesser",OperatorType.NOT_LESSER));
|
||||
add(new Operation(9,"IS_NULL","Is null",OperatorType.IS_NULL));
|
||||
add(new Operation(10,"IS_NOT_NULL","Is not null",OperatorType.IS_NOT_NULL));
|
||||
add(new Operation(11,"BETWEEN","Between",OperatorType.BETWEEN));
|
||||
add(new Operation(12,"IN","In",OperatorType.IN));
|
||||
}};
|
||||
|
||||
static ArrayList<Operation> operationsText = new ArrayList<Operation>() {
|
||||
private static final long serialVersionUID = -6559885743626876431L;
|
||||
{
|
||||
add(new Operation(1,"BEGIN_WITH","Begin with",OperatorType.BEGINS_WITH));
|
||||
add(new Operation(2,"CONTAINS","Contains",OperatorType.CONTAINS));
|
||||
add(new Operation(3,"ENDS_WITH","End with",OperatorType.ENDS_WITH));
|
||||
add(new Operation(4,"MATCH","Match",OperatorType.MATCH_REGEX));
|
||||
add(new Operation(5,"NOT_BEGIN_WITH","Not begin with",OperatorType.BEGINS_WITH));
|
||||
add(new Operation(6,"NOT_CONTAINS","Not contains",OperatorType.CONTAINS));
|
||||
add(new Operation(7,"NOT_ENDS_WITH","Not end with",OperatorType.ENDS_WITH));
|
||||
add(new Operation(8,"NOT_MATCH","Not match",OperatorType.MATCH_REGEX));
|
||||
add(new Operation(10,"IS_NULL","Is null",OperatorType.IS_NULL));
|
||||
add(new Operation(11,"IS_NOT_NULL","Is not null",OperatorType.IS_NOT_NULL));
|
||||
add(new Operation(12,"BETWEEN","Between",OperatorType.BETWEEN));
|
||||
add(new Operation(13,"IN","In",OperatorType.IN));
|
||||
|
||||
}};
|
||||
|
||||
|
||||
public static ArrayList<Operation> getAll(String dataTypeName){
|
||||
if(dataTypeName.compareTo("Boolean")==0){
|
||||
operations=operationsNumeric;
|
||||
} else {
|
||||
if(dataTypeName.compareTo("Date")==0){
|
||||
operations=operationsNumeric;
|
||||
} else {
|
||||
if(dataTypeName.compareTo("Integer")==0){
|
||||
operations=operationsNumeric;
|
||||
} else {
|
||||
if(dataTypeName.compareTo("Geometry")==0){
|
||||
operations=operationsNumeric;
|
||||
} else {
|
||||
if(dataTypeName.compareTo("Numeric")==0){
|
||||
operations=operationsNumeric;
|
||||
} else {
|
||||
if(dataTypeName.compareTo("Text")==0){
|
||||
operations=operationsText;
|
||||
} else {
|
||||
operations=operationsText;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
return operations;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.client.resource;
|
||||
|
||||
|
||||
|
||||
import com.google.gwt.core.client.GWT;
|
||||
import com.google.gwt.resources.client.ClientBundle;
|
||||
import com.google.gwt.resources.client.ImageResource;
|
||||
//import com.google.gwt.resources.client.ClientBundle.Source;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public interface ExpressionResources extends ClientBundle {
|
||||
|
||||
public static final ExpressionResources INSTANCE = GWT.create(ExpressionResources.class);
|
||||
|
||||
@Source("add.png")
|
||||
ImageResource add();
|
||||
|
||||
@Source("delete.png")
|
||||
ImageResource delete();
|
||||
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 660 B |
Binary file not shown.
After Width: | Height: | Size: 1.5 KiB |
Binary file not shown.
After Width: | Height: | Size: 614 B |
Binary file not shown.
After Width: | Height: | Size: 1.3 KiB |
|
@ -0,0 +1,36 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
package org.gcube.portlets.user.td.expressionwidget.client.rpc;
|
||||
|
||||
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.expression.ExpressionServiceException;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
|
||||
import com.google.gwt.user.client.rpc.RemoteService;
|
||||
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
|
||||
|
||||
/**
|
||||
*
|
||||
* Implements the basic interfaces generate and submit Expression on service.
|
||||
*
|
||||
* <p>
|
||||
* Allows:
|
||||
* <ul>
|
||||
* <li>Generate Expression</li>
|
||||
* <ul>
|
||||
* </p>
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
@RemoteServiceRelativePath("ExpressionService")
|
||||
public interface ExpressionService extends RemoteService {
|
||||
|
||||
public Void submitExpression(Expression expression) throws ExpressionServiceException;
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
package org.gcube.portlets.user.td.expressionwidget.client.rpc;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
|
||||
import com.google.gwt.core.client.GWT;
|
||||
import com.google.gwt.user.client.rpc.AsyncCallback;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
|
||||
public interface ExpressionServiceAsync {
|
||||
|
||||
public static ExpressionServiceAsync INSTANCE = (ExpressionServiceAsync) GWT
|
||||
.create(ExpressionService.class);
|
||||
|
||||
void submitExpression(Expression expression,AsyncCallback<Void> callback);
|
||||
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class Constants {
|
||||
|
||||
public final static String VERSION = "1.0.0";
|
||||
public final static String DEFAULT_USER = "giancarlo.panichi";
|
||||
public final static String DEFAULT_SCOPE = "/gcube/devsec";
|
||||
|
||||
public static final String PARAMETER_ENCODING = "encoding";
|
||||
public static final String PARAMETER_HASHEADER = "hasHeader";
|
||||
public static final String PARAMETER_SEPARATOR = "separator";
|
||||
public static final String PARAMETER_COLUMNS = "columns";
|
||||
public static final String PARAMETER_URL = "url";
|
||||
|
||||
public static final String PARAMETER_REGISTRYBASEURL ="registryBaseUrl";
|
||||
public static final String PARAMETER_AGENCY ="agency";
|
||||
public static final String PARAMETER_ID ="id";
|
||||
public static final String PARAMETER_VERSION ="version";
|
||||
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.expression;
|
||||
|
||||
public class ExpressionServiceException extends Exception {
|
||||
|
||||
private static final long serialVersionUID = -9066034060104406559L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public ExpressionServiceException() {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* @param message
|
||||
*/
|
||||
public ExpressionServiceException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
|
||||
public ExpressionServiceException(String message,Throwable t) {
|
||||
super(message,t);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
public class Expression implements Serializable{
|
||||
|
||||
|
||||
private static final long serialVersionUID = 7818512507606450235L;
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model;
|
||||
|
||||
public enum OperatorType {
|
||||
// Arithmetic
|
||||
ADDITION, SUBTRACTION, MULTIPLICATION, DIVISION, MODULUS,
|
||||
|
||||
// COMPARISON
|
||||
|
||||
EQUALS, GREATER, LESSER,
|
||||
|
||||
GREATER_OR_EQUALS, LESSER_OR_EQUALS,
|
||||
|
||||
NOT_EQUALS, NOT_GREATER, NOT_LESSER,
|
||||
|
||||
// LOGICAL
|
||||
|
||||
ALL, AND, ANY, BETWEEN, EXISTS, IN, LIKE, NOT, OR, IS_NULL, UNIQUE, IS_NOT_NULL,
|
||||
|
||||
// STRING
|
||||
|
||||
BEGINS_WITH, ENDS_WITH, CONTAINS, MATCH_REGEX,
|
||||
|
||||
NO_BEGINS_WITH, NO_ENDS_WITH, NO_CONTAINS, NO_MATCH_REGEX,
|
||||
|
||||
|
||||
// COMPLEX
|
||||
|
||||
SELECT_IN
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.comparable;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class Equals extends Expression {
|
||||
private static final long serialVersionUID = 3154667914317692836L;
|
||||
Expression leftArgument;
|
||||
Expression rightArgument;
|
||||
|
||||
public Equals(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.EQUALS;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.comparable;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class GreaterOrEquals extends Expression {
|
||||
private static final long serialVersionUID = -5441076239992740424L;
|
||||
protected Expression leftArgument;
|
||||
protected Expression rightArgument;
|
||||
|
||||
public GreaterOrEquals(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.GREATER_OR_EQUALS;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.comparable;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class GreaterThan extends Expression {
|
||||
private static final long serialVersionUID = -8878360512708863164L;
|
||||
protected Expression leftArgument;
|
||||
protected Expression rightArgument;
|
||||
|
||||
public GreaterThan(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.GREATER;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.comparable;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class LessOrEquals extends Expression {
|
||||
private static final long serialVersionUID = 7693397481316523615L;
|
||||
Expression leftArgument;
|
||||
Expression rightArgument;
|
||||
|
||||
public LessOrEquals(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.LESSER_OR_EQUALS;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.comparable;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class LessThan extends Expression {
|
||||
private static final long serialVersionUID = 6420164520127827750L;
|
||||
Expression leftArgument;
|
||||
Expression rightArgument;
|
||||
|
||||
public LessThan(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.LESSER;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.comparable;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class NotEquals extends Expression {
|
||||
private static final long serialVersionUID = 7587723477959909679L;
|
||||
Expression leftArgument;
|
||||
Expression rightArgument;
|
||||
|
||||
public NotEquals(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.NOT_EQUALS;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.comparable;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class NotGreater extends Expression {
|
||||
private static final long serialVersionUID = 6783019184437499833L;
|
||||
Expression leftArgument;
|
||||
Expression rightArgument;
|
||||
|
||||
public NotGreater(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.NOT_GREATER;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.comparable;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class NotLess extends Expression {
|
||||
private static final long serialVersionUID = 4497500830326659077L;
|
||||
Expression leftArgument;
|
||||
Expression rightArgument;
|
||||
|
||||
public NotLess(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.NOT_LESSER;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.text;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class TextBeginsWith extends Expression {
|
||||
private static final long serialVersionUID = 222662008523199480L;
|
||||
protected Expression leftArgument;
|
||||
protected Expression rightArgument;
|
||||
|
||||
public TextBeginsWith(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.BEGINS_WITH;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.text;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class TextContains extends Expression {
|
||||
private static final long serialVersionUID = 7951499429397693592L;
|
||||
protected Expression leftArgument;
|
||||
protected Expression rightArgument;
|
||||
|
||||
public TextContains(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.CONTAINS;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.text;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class TextEndsWith extends Expression {
|
||||
private static final long serialVersionUID = -5149428840566398839L;
|
||||
protected Expression leftArgument;
|
||||
protected Expression rightArgument;
|
||||
|
||||
public TextEndsWith(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.ENDS_WITH;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.composite.text;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class TextMatchSQLRegexp extends Expression {
|
||||
private static final long serialVersionUID = -4097780009381262681L;
|
||||
protected Expression leftArgument;
|
||||
protected Expression rightArgument;
|
||||
|
||||
public TextMatchSQLRegexp(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.MATCH_REGEX;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.logical;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class And extends Expression {
|
||||
private static final long serialVersionUID = -4462616033767138280L;
|
||||
protected List<Expression> arguments;
|
||||
|
||||
public And(Expression... arguments) {
|
||||
this.arguments = Arrays.asList(arguments);
|
||||
}
|
||||
|
||||
public And(List<Expression> arguments) {
|
||||
this.arguments = arguments;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.AND;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.logical;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class Between extends Expression {
|
||||
|
||||
private static final long serialVersionUID = 5367101215792568854L;
|
||||
|
||||
protected Expression leftArgument;
|
||||
protected Expression rightArgument;
|
||||
|
||||
public Between(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.BETWEEN;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.logical;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class IsNotNull extends Expression {
|
||||
|
||||
private static final long serialVersionUID = 8930488371061116376L;
|
||||
protected Expression argument;
|
||||
|
||||
public IsNotNull(Expression argument) {
|
||||
this.argument=argument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.IS_NOT_NULL;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.logical;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class IsNull extends Expression {
|
||||
private static final long serialVersionUID = -7845762664802353175L;
|
||||
protected Expression argument;
|
||||
|
||||
public IsNull(Expression argument) {
|
||||
this.argument=argument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.IS_NULL;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.logical;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class Not extends Expression {
|
||||
private static final long serialVersionUID = 9206533042761278382L;
|
||||
protected Expression argument;
|
||||
|
||||
public Not(Expression argument) {
|
||||
this.argument = argument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.NOT;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.logical;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi"
|
||||
* <a href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class Or extends Expression {
|
||||
private static final long serialVersionUID = 1855717717443945397L;
|
||||
|
||||
protected List<Expression> arguments;
|
||||
|
||||
public Or(Expression... arguments) {
|
||||
this.arguments = Arrays.asList(arguments);
|
||||
}
|
||||
|
||||
public Or(List<Expression> arguments) {
|
||||
this.arguments = arguments;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.OR;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.shared.model.logical;
|
||||
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.Expression;
|
||||
import org.gcube.portlets.user.td.expressionwidget.shared.model.OperatorType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author "Giancarlo Panichi" <a
|
||||
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||
*
|
||||
*/
|
||||
public class ValueIsIn extends Expression {
|
||||
private static final long serialVersionUID = 739569588958197726L;
|
||||
protected Expression leftArgument;
|
||||
protected Expression rightArgument;
|
||||
|
||||
public ValueIsIn(Expression leftArgument, Expression rightArgument) {
|
||||
this.leftArgument = leftArgument;
|
||||
this.rightArgument = rightArgument;
|
||||
}
|
||||
|
||||
public OperatorType getOperator() {
|
||||
return OperatorType.IN;
|
||||
}
|
||||
|
||||
public String getReturnedDataType() {
|
||||
return "Boolean";
|
||||
}
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module rename-to='ExpressionWidget'>
|
||||
<!-- Inherit the core Web Toolkit stuff. -->
|
||||
<inherits name='com.google.gwt.user.User' />
|
||||
|
||||
<!-- We need the JUnit module in the main module, -->
|
||||
<!-- otherwise eclipse complains (Google plugin bug?) -->
|
||||
<inherits name='com.google.gwt.junit.JUnit' />
|
||||
|
||||
<!-- Inherit the default GWT style sheet. You can change -->
|
||||
<!-- the theme of your GWT application by uncommenting -->
|
||||
<!-- any one of the following lines. -->
|
||||
<inherits name='com.google.gwt.user.theme.standard.Standard' />
|
||||
<!-- <inherits name='com.google.gwt.user.theme.chrome.Chrome'/> -->
|
||||
<!-- <inherits name='com.google.gwt.user.theme.dark.Dark'/> -->
|
||||
|
||||
<!-- Other module inherits -->
|
||||
<inherits name='com.sencha.gxt.ui.GXT' />
|
||||
<inherits name="com.allen_sauer.gwt.log.gwt-log-TRACE" />
|
||||
<inherits name='org.gcube.portlets.user.td.gwtservice.TDGWTService' />
|
||||
|
||||
|
||||
|
||||
<!-- Specify the app entry point class. -->
|
||||
<entry-point class='org.gcube.portlets.user.td.expressionwidget.client.ExpressionWidgetEntry' />
|
||||
|
||||
<!-- Specify the paths for translatable code -->
|
||||
<source path='client' />
|
||||
<source path='shared' />
|
||||
|
||||
|
||||
</module>
|
|
@ -0,0 +1,2 @@
|
|||
sendButton = Send
|
||||
nameField = Enter your name
|
|
@ -0,0 +1,2 @@
|
|||
sendButton = Envoyer
|
||||
nameField = Entrez votre nom
|
|
@ -0,0 +1,34 @@
|
|||
/** Add css rules here for your application. */
|
||||
|
||||
|
||||
/** Example rules used by the template application (remove for your app) */
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
font-weight: bold;
|
||||
color: #777777;
|
||||
margin: 40px 0px 70px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sendButton {
|
||||
display: block;
|
||||
font-size: 16pt;
|
||||
}
|
||||
|
||||
/** Most GWT widgets already have a style name defined */
|
||||
.gwt-DialogBox {
|
||||
width: 400px;
|
||||
}
|
||||
|
||||
.dialogVPanel {
|
||||
margin: 5px;
|
||||
}
|
||||
|
||||
.serverResponseLabelError {
|
||||
color: red;
|
||||
}
|
||||
|
||||
/** Set ids using widget.getElement().setId("idOfElement") */
|
||||
#closeButton {
|
||||
margin: 15px 6px 6px;
|
||||
}
|
|
@ -0,0 +1,50 @@
|
|||
<!doctype html>
|
||||
<!-- The DOCTYPE declaration above will set the -->
|
||||
<!-- browser's rendering engine into -->
|
||||
<!-- "Standards Mode". Replacing this declaration -->
|
||||
<!-- with a "Quirks Mode" doctype may lead to some -->
|
||||
<!-- differences in layout. -->
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
|
||||
<!-- -->
|
||||
<!-- Consider inlining CSS to reduce the number of requested files -->
|
||||
<!-- -->
|
||||
<link type="text/css" rel="stylesheet" href="ExpressionWidget.css">
|
||||
|
||||
<!-- -->
|
||||
<!-- Any title is fine -->
|
||||
<!-- -->
|
||||
<title>Web Application Starter Project</title>
|
||||
|
||||
<!-- -->
|
||||
<!-- This script loads your compiled module. -->
|
||||
<!-- If you add any GWT meta tags, they must -->
|
||||
<!-- be added before this line. -->
|
||||
<!-- -->
|
||||
<script type="text/javascript" language="javascript" src="ExpressionWidget/ExpressionWidget.nocache.js"></script>
|
||||
</head>
|
||||
|
||||
<!-- -->
|
||||
<!-- The body can have arbitrary html, or -->
|
||||
<!-- you can leave the body empty if you want -->
|
||||
<!-- to create a completely dynamic UI. -->
|
||||
<!-- -->
|
||||
<body>
|
||||
|
||||
<!-- OPTIONAL: include this if you want history support -->
|
||||
<iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1' style="position:absolute;width:0;height:0;border:0"></iframe>
|
||||
|
||||
<!-- RECOMMENDED if your web app will not function without JavaScript enabled -->
|
||||
<noscript>
|
||||
<div style="width: 22em; position: absolute; left: 50%; margin-left: -11em; color: red; background-color: white; border: 1px solid red; padding: 4px; font-family: sans-serif">
|
||||
Your web browser must have JavaScript enabled
|
||||
in order for this application to display correctly.
|
||||
</div>
|
||||
</noscript>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,35 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE web-app
|
||||
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
|
||||
"http://java.sun.com/dtd/web-app_2_3.dtd">
|
||||
|
||||
<web-app>
|
||||
|
||||
<!-- Servlets -->
|
||||
<servlet>
|
||||
<servlet-name>TDGWTService</servlet-name>
|
||||
<servlet-class>org.gcube.portlets.user.td.gwtservice.server.TDGWTServiceImpl</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>jUnitHostImpl</servlet-name>
|
||||
<servlet-class>com.google.gwt.junit.server.JUnitHostImpl</servlet-class>
|
||||
</servlet>
|
||||
|
||||
<!-- Servlets Mapping -->
|
||||
<servlet-mapping>
|
||||
<servlet-name>TDGWTService</servlet-name>
|
||||
<url-pattern>ExpressionWidget/TDGWTService</url-pattern>
|
||||
</servlet-mapping>
|
||||
<servlet-mapping>
|
||||
<servlet-name>jUnitHostImpl</servlet-name>
|
||||
<url-pattern>ExpressionWidget/junithost/*</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
|
||||
<!-- Default page to serve -->
|
||||
<welcome-file-list>
|
||||
<welcome-file>ExpressionWidget.html</welcome-file>
|
||||
</welcome-file-list>
|
||||
|
||||
</web-app>
|
|
@ -0,0 +1,64 @@
|
|||
package org.gcube.portlets.user.td.expressionwidget.client;
|
||||
|
||||
|
||||
|
||||
import com.google.gwt.junit.client.GWTTestCase;
|
||||
|
||||
/**
|
||||
* GWT JUnit <b>integration</b> tests must extend GWTTestCase.
|
||||
* Using <code>"GwtTest*"</code> naming pattern exclude them from running with
|
||||
* surefire during the test phase.
|
||||
*
|
||||
* If you run the tests using the Maven command line, you will have to
|
||||
* navigate with your browser to a specific url given by Maven.
|
||||
* See http://mojo.codehaus.org/gwt-maven-plugin/user-guide/testing.html
|
||||
* for details.
|
||||
*/
|
||||
public class GwtTestExpressionWidget extends GWTTestCase {
|
||||
|
||||
/**
|
||||
* Must refer to a valid module that sources this class.
|
||||
*/
|
||||
public String getModuleName() {
|
||||
return "org.gcube.portlets.user.td.expressionwidget.ExpressionWidgetJUnit";
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* This test will send a request to the server using the greetServer method in
|
||||
* GreetingService and verify the response.
|
||||
*/
|
||||
public void testGreetingService() {
|
||||
// Create the service that we will test.
|
||||
//GreetingServiceAsync greetingService = GWT.create(GreetingService.class);
|
||||
//ServiceDefTarget target = (ServiceDefTarget) greetingService;
|
||||
//target.setServiceEntryPoint(GWT.getModuleBaseURL() + "SDMXImportWizardTD/greet");
|
||||
|
||||
// Since RPC calls are asynchronous, we will need to wait for a response
|
||||
// after this test method returns. This line tells the test runner to wait
|
||||
// up to 10 seconds before timing out.
|
||||
//delayTestFinish(10000);
|
||||
|
||||
// Send a request to the server.
|
||||
/* greetingService.greetServer("GWT User", new AsyncCallback<String>() {
|
||||
public void onFailure(Throwable caught) {
|
||||
// The request resulted in an unexpected error.
|
||||
fail("Request failure: " + caught.getMessage());
|
||||
}
|
||||
|
||||
|
||||
public void onSuccess(String result) {
|
||||
// Verify that the response is correct.
|
||||
assertTrue(result.startsWith("Hello, GWT User!"));
|
||||
|
||||
// Now that we have received a response, we need to tell the test runner
|
||||
// that the test is complete. You must call finishTest() after an
|
||||
// asynchronous test finishes successfully, or the test will time out.
|
||||
finishTest();
|
||||
}
|
||||
});*/
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module rename-to="ExpressionWidgetJUnit">
|
||||
<!-- Inherit our applications main module. -->
|
||||
<inherits name='org.gcube.portlets.user.td.gwtservice.TDGWTService' />
|
||||
|
||||
<!-- Specify the path to any remote services. -->
|
||||
<servlet path="/TDGWTService"
|
||||
class="org.gcube.portlets.user.td.gwtservice.server.TDGWTServiceImpl" />
|
||||
|
||||
|
||||
<!-- Specify the paths for translatable code -->
|
||||
<source path='client' />
|
||||
</module>
|
|
@ -0,0 +1,6 @@
|
|||
gCube System - License
|
||||
------------------------------------------------------------
|
||||
|
||||
The gCube/gCore software is licensed as Free Open Source software conveying to the EUPL (http://ec.europa.eu/idabc/eupl).
|
||||
The software and documentation is provided by its authors/distributors "as is" and no expressed or
|
||||
implied warranty is given for its use, quality or fitness for a particular case.
|
|
@ -0,0 +1 @@
|
|||
Giancarlo Panichi (giancarlo.panichi@isti.cnr.it), CNR Pisa, Istituto di Scienza e Tecnologie dell'Informazione "A. Faedo"
|
|
@ -0,0 +1,40 @@
|
|||
The gCube System - ${name}
|
||||
------------------------------------------------------------
|
||||
|
||||
This work has been supported by the following European projects: iMarine (FP7-INFRASTRUCTURES-2011-2)
|
||||
|
||||
Authors
|
||||
-------
|
||||
|
||||
Giancarlo Panichi (giancarlo.panichi@isti.cnr.it), CNR Pisa,
|
||||
Istituto di Scienza e Tecnologie dell'Informazione "A. Faedo"
|
||||
|
||||
|
||||
Version and Release Date
|
||||
------------------------
|
||||
|
||||
v. ${version} (${release.date})
|
||||
|
||||
Description
|
||||
-----------
|
||||
|
||||
${project.description}
|
||||
|
||||
Download information
|
||||
--------------------
|
||||
Source code URL: ${scm.url}
|
||||
|
||||
|
||||
Documentation
|
||||
-------------
|
||||
|
||||
${project.description}
|
||||
|
||||
|
||||
Licensing
|
||||
---------
|
||||
|
||||
This software is licensed under the terms you may find in the file named "LICENSE" in this directory.
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
<ReleaseNotes>
|
||||
<Changeset component="${groupId}.${artifactId}.1-0-0"
|
||||
date="2013-12-18">
|
||||
<Change>First Release</Change>
|
||||
</Changeset>
|
||||
</ReleaseNotes>
|
|
@ -0,0 +1,39 @@
|
|||
<assembly
|
||||
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
|
||||
<id>servicearchive</id>
|
||||
<formats>
|
||||
<format>tar.gz</format>
|
||||
</formats>
|
||||
<baseDirectory>/</baseDirectory>
|
||||
<fileSets>
|
||||
<fileSet>
|
||||
<directory>${distroDirectory}</directory>
|
||||
<outputDirectory>/</outputDirectory>
|
||||
<useDefaultExcludes>true</useDefaultExcludes>
|
||||
<includes>
|
||||
<include>README</include>
|
||||
<include>LICENSE</include>
|
||||
<include>INSTALL</include>
|
||||
<include>MAINTAINERS</include>
|
||||
<include>changelog.xml</include>
|
||||
</includes>
|
||||
<fileMode>755</fileMode>
|
||||
</fileSet>
|
||||
</fileSets>
|
||||
<files>
|
||||
<file>
|
||||
<source>${distroDirectory}/svnpath.txt</source>
|
||||
<outputDirectory>/${artifactId}</outputDirectory>
|
||||
</file>
|
||||
<file>
|
||||
<source>${configDirectory}/profile.xml</source>
|
||||
<outputDirectory>/</outputDirectory>
|
||||
</file>
|
||||
<file>
|
||||
<source>target/${build.finalName}.${packaging}</source>
|
||||
<outputDirectory>/${artifactId}</outputDirectory>
|
||||
</file>
|
||||
</files>
|
||||
</assembly>
|
|
@ -0,0 +1,29 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Resource>
|
||||
<ID></ID>
|
||||
<Type>Service</Type>
|
||||
<Profile>
|
||||
<Description>${project.description}</Description>
|
||||
<Class>PortletsUser</Class>
|
||||
<Name>${project.name}</Name>
|
||||
<Version>1.0.0</Version>
|
||||
<Packages>
|
||||
<Software>
|
||||
<Description>${project.description}</Description>
|
||||
<Name>${project.name}</Name>
|
||||
<Version>${version}</Version>
|
||||
<MavenCoordinates>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>${project.artifactId}</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</MavenCoordinates>
|
||||
<Type>library</Type>
|
||||
<Files>
|
||||
<File>${project.build.finalName}.${project.packaging}</File>
|
||||
</Files>
|
||||
</Software>
|
||||
</Packages>
|
||||
</Profile>
|
||||
</Resource>
|
||||
|
||||
|
|
@ -0,0 +1 @@
|
|||
${scm.url}
|
Loading…
Reference in New Issue