summaryrefslogtreecommitdiffstats
path: root/client-compiler/src
diff options
context:
space:
mode:
authorLeif Åstrand <leif@vaadin.com>2012-08-28 16:58:49 +0300
committerLeif Åstrand <leif@vaadin.com>2012-08-28 16:59:09 +0300
commita2488b51bb9f1f8c72d9b97c13ef91ff60422cba (patch)
tree162baa4a21d72c67275ac19cd6fb80a707f478a5 /client-compiler/src
parent0b93b5ada8db19e3144d36d94cc9230e34ff0bd4 (diff)
downloadvaadin-framework-a2488b51bb9f1f8c72d9b97c13ef91ff60422cba.tar.gz
vaadin-framework-a2488b51bb9f1f8c72d9b97c13ef91ff60422cba.zip
Include UnknownComponentConnector in eager ConnectorBundle (#9371)
Diffstat (limited to 'client-compiler/src')
-rw-r--r--client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/ConnectorBundleLoaderFactory.java3
-rw-r--r--client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorBundle.java5
-rw-r--r--client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorInitVisitor.java11
3 files changed, 14 insertions, 5 deletions
diff --git a/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/ConnectorBundleLoaderFactory.java b/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/ConnectorBundleLoaderFactory.java
index 752f290a42..6959a549ed 100644
--- a/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/ConnectorBundleLoaderFactory.java
+++ b/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/ConnectorBundleLoaderFactory.java
@@ -42,6 +42,7 @@ import com.vaadin.terminal.gwt.client.metadata.ProxyHandler;
import com.vaadin.terminal.gwt.client.metadata.TypeData;
import com.vaadin.terminal.gwt.client.metadata.TypeDataBundle;
import com.vaadin.terminal.gwt.client.metadata.TypeDataStore;
+import com.vaadin.terminal.gwt.client.ui.UnknownComponentConnector;
import com.vaadin.terminal.gwt.widgetsetutils.metadata.ClientRpcVisitor;
import com.vaadin.terminal.gwt.widgetsetutils.metadata.ConnectorBundle;
import com.vaadin.terminal.gwt.widgetsetutils.metadata.ConnectorInitVisitor;
@@ -604,6 +605,8 @@ public class ConnectorBundleLoaderFactory extends Generator {
// Eager connectors and all RPC interfaces are loaded by default
eagerBundle.processTypes(eagerLogger,
connectorsByLoadStyle.get(LoadStyle.EAGER));
+ eagerBundle.processType(eagerLogger, typeOracle
+ .findType(UnknownComponentConnector.class.getCanonicalName()));
eagerBundle.processSubTypes(eagerLogger,
typeOracle.getType(ClientRpc.class.getName()));
eagerBundle.processSubTypes(eagerLogger,
diff --git a/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorBundle.java b/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorBundle.java
index 1db551ed9a..a3659b43ed 100644
--- a/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorBundle.java
+++ b/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorBundle.java
@@ -34,6 +34,7 @@ import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.ComponentConnector;
import com.vaadin.terminal.gwt.client.ServerConnector;
import com.vaadin.terminal.gwt.client.communication.JSONSerializer;
+import com.vaadin.terminal.gwt.client.ui.UnknownComponentConnector;
public class ConnectorBundle {
private static final String FAIL_IF_NOT_SERIALIZABLE = "vFailIfNotSerializable";
@@ -431,7 +432,9 @@ public class ConnectorBundle {
}
private static boolean isConnected(JClassType type) {
- return type.isAnnotationPresent(Connect.class);
+ return type.isAnnotationPresent(Connect.class)
+ || type.getQualifiedSourceName().equals(
+ UnknownComponentConnector.class.getCanonicalName());
}
public static boolean isConnectedComponentConnector(JClassType type) {
diff --git a/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorInitVisitor.java b/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorInitVisitor.java
index 09cdaddc31..fec337afd9 100644
--- a/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorInitVisitor.java
+++ b/client-compiler/src/com/vaadin/terminal/gwt/widgetsetutils/metadata/ConnectorInitVisitor.java
@@ -14,11 +14,14 @@ public class ConnectorInitVisitor extends TypeVisitor {
@Override
public void visitConnector(TreeLogger logger, JClassType type,
ConnectorBundle bundle) {
- logger.log(Type.INFO, type.getName() + " will be in the "
- + bundle.getName().replaceAll("^_*", "") + " bundle");
Connect connectAnnotation = type.getAnnotation(Connect.class);
- bundle.setIdentifier(type, connectAnnotation.value().getCanonicalName());
- bundle.setNeedsGwtConstructor(type);
+ if (connectAnnotation != null) {
+ logger.log(Type.INFO, type.getName() + " will be in the "
+ + bundle.getName().replaceAll("^_*", "") + " bundle");
+ bundle.setIdentifier(type, connectAnnotation.value()
+ .getCanonicalName());
+ bundle.setNeedsGwtConstructor(type);
+ }
}
}