Browse Source

VConsole logging -> java.util.logging

Change-Id: Id1b04e1335f0906f8de2d514ff11bc744dc14c49
tags/7.5.0.beta1
Artur Signell 9 years ago
parent
commit
718eb3e49a

+ 2
- 1
client/src/com/vaadin/client/ApplicationConfiguration.java View File

@@ -638,7 +638,8 @@ public class ApplicationConfiguration implements EntryPoint {

@Override
public void failed(Throwable reason) {
VConsole.error(reason);
getLogger().log(Level.SEVERE,
"Error loading deferred bundle", reason);
}
});
}

+ 149
- 105
client/src/com/vaadin/client/ApplicationConnection.java View File

@@ -26,6 +26,7 @@ import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;

import com.google.gwt.aria.client.LiveValue;
@@ -93,6 +94,7 @@ import com.vaadin.client.ui.VOverlay;
import com.vaadin.client.ui.dd.VDragAndDropManager;
import com.vaadin.client.ui.ui.UIConnector;
import com.vaadin.client.ui.window.WindowConnector;
import com.vaadin.shared.AbstractComponentState;
import com.vaadin.shared.ApplicationConstants;
import com.vaadin.shared.JsonConstants;
import com.vaadin.shared.VaadinUriResolver;
@@ -518,7 +520,7 @@ public class ApplicationConnection implements HasHandlers {
int currentTime = elapsedMillis();
int stepDuration = currentTime - previousStep;
if (stepDuration >= minDuration) {
VConsole.log(message + ": " + stepDuration + " ms");
getLogger().info(message + ": " + stepDuration + " ms");
}
previousStep = currentTime;
}
@@ -540,16 +542,18 @@ public class ApplicationConnection implements HasHandlers {
}

public void init(WidgetSet widgetSet, ApplicationConfiguration cnf) {
VConsole.log("Starting application " + cnf.getRootPanelId());
VConsole.log("Using theme: " + cnf.getThemeName());
getLogger().info("Starting application " + cnf.getRootPanelId());
getLogger().info("Using theme: " + cnf.getThemeName());

VConsole.log("Vaadin application servlet version: "
+ cnf.getServletVersion());
getLogger().info(
"Vaadin application servlet version: "
+ cnf.getServletVersion());

if (!cnf.getServletVersion().equals(Version.getFullVersion())) {
VConsole.error("Warning: your widget set seems to be built with a different "
+ "version than the one used on server. Unexpected "
+ "behavior may occur.");
getLogger()
.severe("Warning: your widget set seems to be built with a different "
+ "version than the one used on server. Unexpected "
+ "behavior may occur.");
}

this.widgetSet = widgetSet;
@@ -853,7 +857,8 @@ public class ApplicationConnection implements HasHandlers {
payload.put(ApplicationConstants.RPC_INVOCATIONS, reqInvocations);
payload.put(ApplicationConstants.SERVER_SYNC_ID, lastSeenServerSyncId);

VConsole.log("Making UIDL Request with params: " + payload.toJson());
getLogger()
.info("Making UIDL Request with params: " + payload.toJson());
String uri = translateVaadinUri(ApplicationConstants.APP_PROTOCOL_PREFIX
+ ApplicationConstants.UIDL_PATH + '/');

@@ -911,9 +916,10 @@ public class ApplicationConnection implements HasHandlers {

@Override
public void onResponseReceived(Request request, Response response) {
VConsole.log("Server visit took "
+ String.valueOf((new Date()).getTime()
- requestStartTime.getTime()) + "ms");
getLogger().info(
"Server visit took "
+ String.valueOf((new Date()).getTime()
- requestStartTime.getTime()) + "ms");

int statusCode = response.getStatusCode();
// Notify network observers about response status
@@ -937,7 +943,7 @@ public class ApplicationConnection implements HasHandlers {
* Status code 0 does indicate that there was no server
* side processing, so we can retry the request.
*/
VConsole.log("Status code 0, retrying");
getLogger().warning("Status code 0, retrying");
(new Timer() {
@Override
public void run() {
@@ -968,7 +974,8 @@ public class ApplicationConnection implements HasHandlers {
*/
String delay = response.getHeader("Retry-After");
if (delay != null) {
VConsole.log("503, retrying in " + delay + "msec");
getLogger().warning(
"503, retrying in " + delay + "msec");
(new Timer() {
@Override
public void run() {
@@ -1026,7 +1033,7 @@ public class ApplicationConnection implements HasHandlers {
try {
doAjaxRequest(uri, payload, requestCallback);
} catch (RequestException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error in server request", e);
endRequest();
fireEvent(new ConnectionStatusEvent(0));
}
@@ -1052,8 +1059,9 @@ public class ApplicationConnection implements HasHandlers {
return;
}

VConsole.log("JSON parsing took "
+ (new Date().getTime() - start.getTime()) + "ms");
getLogger().info(
"JSON parsing took " + (new Date().getTime() - start.getTime())
+ "ms");
if (isApplicationRunning()) {
handleReceivedJSONMessage(start, jsonText, json);
} else {
@@ -1192,9 +1200,10 @@ public class ApplicationConnection implements HasHandlers {

// Show this message just once
if (cssWaits++ == 0) {
VConsole.log("Assuming CSS loading is not complete, "
+ "postponing render phase. "
+ "(.v-loading-indicator height == 0)");
getLogger().warning(
"Assuming CSS loading is not complete, "
+ "postponing render phase. "
+ "(.v-loading-indicator height == 0)");
}
} else {
cssLoaded = true;
@@ -1226,7 +1235,7 @@ public class ApplicationConnection implements HasHandlers {
*
*/
protected void showCommunicationError(String details, int statusCode) {
VConsole.error("Communication error: " + details);
getLogger().severe("Communication error: " + details);
showError(details, configuration.getCommunicationError());
}

@@ -1237,7 +1246,7 @@ public class ApplicationConnection implements HasHandlers {
* Optional details for debugging.
*/
protected void showAuthenticationError(String details) {
VConsole.error("Authentication error: " + details);
getLogger().severe("Authentication error: " + details);
showError(details, configuration.getAuthorizationError());
}

@@ -1248,7 +1257,7 @@ public class ApplicationConnection implements HasHandlers {
* Optional details for debugging.
*/
public void showSessionExpiredError(String details) {
VConsole.error("Session expired: " + details);
getLogger().severe("Session expired: " + details);
showError(details, configuration.getSessionExpiredError());
}

@@ -1307,7 +1316,8 @@ public class ApplicationConnection implements HasHandlers {

protected void startRequest() {
if (hasActiveRequest) {
VConsole.error("Trying to start a new request while another is active");
getLogger().severe(
"Trying to start a new request while another is active");
}
hasActiveRequest = true;
requestStartTime = new Date();
@@ -1316,7 +1326,7 @@ public class ApplicationConnection implements HasHandlers {

protected void endRequest() {
if (!hasActiveRequest) {
VConsole.error("No active request");
getLogger().severe("No active request");
}
// After checkForPendingVariableBursts() there may be a new active
// request, so we must set hasActiveRequest to false before, not after,
@@ -1385,7 +1395,8 @@ public class ApplicationConnection implements HasHandlers {
&& !getConnectorMap().isDragAndDropPaintable(id)) {
// variable owner does not exist anymore
iterator.remove();
VConsole.log("Removed variable from removed component: " + id);
getLogger().info(
"Removed variable from removed component: " + id);
}
}
}
@@ -1504,7 +1515,7 @@ public class ApplicationConnection implements HasHandlers {
// Some component is doing something that can't be interrupted
// (e.g. animation that should be smooth). Enqueue the UIDL
// message for later processing.
VConsole.log("Postponing UIDL handling due to lock...");
getLogger().info("Postponing UIDL handling due to lock...");
pendingUIDLMessages.add(new PendingUIDLMessage(start, jsonText,
json));
if (!forceHandleMessage.isRunning()) {
@@ -1521,7 +1532,7 @@ public class ApplicationConnection implements HasHandlers {
final Object lock = new Object();
suspendReponseHandling(lock);

VConsole.log("Handling message from server");
getLogger().info("Handling message from server");
eventBus.fireEvent(new ResponseHandlingStartedEvent(this));

final int syncId;
@@ -1540,14 +1551,15 @@ public class ApplicationConnection implements HasHandlers {
}
} else {
syncId = -1;
VConsole.error("Server response didn't contain a sync id. "
+ "Please verify that the server is up-to-date and that the response data has not been modified in transmission.");
getLogger()
.severe("Server response didn't contain a sync id. "
+ "Please verify that the server is up-to-date and that the response data has not been modified in transmission.");
}

// Handle redirect
if (json.containsKey("redirect")) {
String url = json.getValueMap("redirect").getString("url");
VConsole.log("redirecting to " + url);
getLogger().info("redirecting to " + url);
redirect(url);
return;
}
@@ -1559,7 +1571,7 @@ public class ApplicationConnection implements HasHandlers {
csrfToken = json
.getString(ApplicationConstants.UIDL_SECURITY_TOKEN_ID);
}
VConsole.log(" * Handling resources from server");
getLogger().info(" * Handling resources from server");

if (json.containsKey("resources")) {
ValueMap resources = json.getValueMap("resources");
@@ -1573,7 +1585,7 @@ public class ApplicationConnection implements HasHandlers {
handleUIDLDuration.logDuration(
" * Handling resources from server completed", 10);

VConsole.log(" * Handling type inheritance map from server");
getLogger().info(" * Handling type inheritance map from server");

if (json.containsKey("typeInheritanceMap")) {
configuration.addComponentInheritanceInfo(json
@@ -1582,7 +1594,7 @@ public class ApplicationConnection implements HasHandlers {
handleUIDLDuration.logDuration(
" * Handling type inheritance map from server completed", 10);

VConsole.log("Handling type mappings from server");
getLogger().info("Handling type mappings from server");

if (json.containsKey("typeMappings")) {
configuration.addComponentMappings(
@@ -1590,7 +1602,7 @@ public class ApplicationConnection implements HasHandlers {

}

VConsole.log("Handling resource dependencies");
getLogger().info("Handling resource dependencies");
if (json.containsKey("scriptDependencies")) {
loadScriptDependencies(json.getJSStringArray("scriptDependencies"));
}
@@ -1620,7 +1632,7 @@ public class ApplicationConnection implements HasHandlers {
Profiler.enter("Handling meta information");
ValueMap meta = null;
if (json.containsKey("meta")) {
VConsole.log(" * Handling meta information");
getLogger().info(" * Handling meta information");
meta = json.getValueMap("meta");
if (meta.containsKey("repaintAll")) {
prepareRepaintAll();
@@ -1663,7 +1675,7 @@ public class ApplicationConnection implements HasHandlers {
* connectors which get a state change event before the UI.
*/
Profiler.enter("Handling locales");
VConsole.log(" * Handling locales");
getLogger().info(" * Handling locales");
// Store locale data
LocaleService
.addLocales(getUIConnector().getState().localeServiceState.localeData);
@@ -1697,9 +1709,10 @@ public class ApplicationConnection implements HasHandlers {

unregisterRemovedConnectors(connectorHierarchyUpdateResult.detachedConnectorIds);

VConsole.log("handleUIDLMessage: "
+ (Duration.currentTimeMillis() - processUidlStart)
+ " ms");
getLogger()
.info("handleUIDLMessage: "
+ (Duration.currentTimeMillis() - processUidlStart)
+ " ms");

updatingState = false;

@@ -1710,14 +1723,15 @@ public class ApplicationConnection implements HasHandlers {
layoutManager.setEverythingNeedsMeasure();
layoutManager.layoutNow();
} catch (final Throwable e) {
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Error processing layouts", e);
}
Profiler.leave("Layout processing");
}

if (ApplicationConfiguration.isDebugMode()) {
Profiler.enter("Dumping state changes to the console");
VConsole.log(" * Dumping state changes to the console");
getLogger().info(" * Dumping state changes to the console");
VConsole.dirUIDL(json, ApplicationConnection.this);
Profiler.leave("Dumping state changes to the console");
}
@@ -1748,10 +1762,13 @@ public class ApplicationConnection implements HasHandlers {
}
}

VConsole.log(" Processing time was "
+ String.valueOf(lastProcessingTime) + "ms for "
+ jsonText.length() + " characters of JSON");
VConsole.log("Referenced paintables: " + connectorMap.size());
getLogger().info(
" Processing time was "
+ String.valueOf(lastProcessingTime)
+ "ms for " + jsonText.length()
+ " characters of JSON");
getLogger().info(
"Referenced paintables: " + connectorMap.size());

if (meta == null || !meta.containsKey("async")) {
// End the request if the received message was a response,
@@ -1854,7 +1871,7 @@ public class ApplicationConnection implements HasHandlers {
JsArrayObject<StateChangeEvent> pendingStateChangeEvents) {
Profiler.enter("@DelegateToWidget");

VConsole.log(" * Running @DelegateToWidget");
getLogger().info(" * Running @DelegateToWidget");

// Keep track of types that have no @DelegateToWidget in their
// state to optimize performance
@@ -1938,7 +1955,7 @@ public class ApplicationConnection implements HasHandlers {
private void sendStateChangeEvents(
JsArrayObject<StateChangeEvent> pendingStateChangeEvents) {
Profiler.enter("sendStateChangeEvents");
VConsole.log(" * Sending state change events");
getLogger().info(" * Sending state change events");

int size = pendingStateChangeEvents.size();
for (int i = 0; i < size; i++) {
@@ -1946,7 +1963,8 @@ public class ApplicationConnection implements HasHandlers {
try {
sce.getConnector().fireEvent(sce);
} catch (final Throwable e) {
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Error sending state change events", e);
}
}

@@ -1963,11 +1981,12 @@ public class ApplicationConnection implements HasHandlers {
ServerConnector c = currentConnectors.get(i);
if (c.getParent() != null) {
if (!c.getParent().getChildren().contains(c)) {
VConsole.error("ERROR: Connector "
+ c.getConnectorId()
+ " is connected to a parent but the parent ("
+ c.getParent().getConnectorId()
+ ") does not contain the connector");
getLogger()
.severe("ERROR: Connector "
+ c.getConnectorId()
+ " is connected to a parent but the parent ("
+ c.getParent().getConnectorId()
+ ") does not contain the connector");
}
} else if (c == getUIConnector()) {
// UIConnector for this connection, ignore
@@ -1978,9 +1997,10 @@ public class ApplicationConnection implements HasHandlers {
} else {
// The connector has been detached from the
// hierarchy but was not unregistered.
VConsole.error("ERROR: Connector "
+ c.getConnectorId()
+ " is not attached to a parent but has not been unregistered");
getLogger()
.severe("ERROR: Connector "
+ c.getConnectorId()
+ " is not attached to a parent but has not been unregistered");
}

}
@@ -2008,13 +2028,14 @@ public class ApplicationConnection implements HasHandlers {
verifyConnectorHierarchy();
}

VConsole.log("* Unregistered " + detachedArray.length()
+ " connectors");
getLogger().info(
"* Unregistered " + detachedArray.length()
+ " connectors");
Profiler.leave("unregisterRemovedConnectors");
}

private JsArrayString createConnectorsIfNeeded(ValueMap json) {
VConsole.log(" * Creating connectors (if needed)");
getLogger().info(" * Creating connectors (if needed)");

JsArrayString createdConnectors = JavaScriptObject
.createArray().cast();
@@ -2065,7 +2086,8 @@ public class ApplicationConnection implements HasHandlers {
createdConnectors.push(connectorId);
}
} catch (final Throwable e) {
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Error handling type data", e);
}
}

@@ -2085,7 +2107,8 @@ public class ApplicationConnection implements HasHandlers {
onlyNoLayoutUpdates = false;
}

VConsole.log(" * Passing UIDL to Vaadin 6 style connectors");
getLogger()
.info(" * Passing UIDL to Vaadin 6 style connectors");
// update paintables
for (int i = 0; i < length; i++) {
try {
@@ -2111,18 +2134,20 @@ public class ApplicationConnection implements HasHandlers {
Profiler.leave(key);
}
} else if (legacyConnector == null) {
VConsole.error("Received update for "
+ uidl.getTag()
+ ", but there is no such paintable ("
+ connectorId + ") rendered.");
getLogger()
.severe("Received update for "
+ uidl.getTag()
+ ", but there is no such paintable ("
+ connectorId + ") rendered.");
} else {
VConsole.error("Server sent Vaadin 6 style updates for "
+ Util.getConnectorString(legacyConnector)
+ " but this is not a Vaadin 6 Paintable");
getLogger()
.severe("Server sent Vaadin 6 style updates for "
+ Util.getConnectorString(legacyConnector)
+ " but this is not a Vaadin 6 Paintable");
}

} catch (final Throwable e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error handling UIDL", e);
}
}

@@ -2137,14 +2162,15 @@ public class ApplicationConnection implements HasHandlers {
}
Profiler.enter("sendHierarchyChangeEvents");

VConsole.log(" * Sending hierarchy change events");
getLogger().info(" * Sending hierarchy change events");
for (int i = 0; i < eventCount; i++) {
ConnectorHierarchyChangeEvent event = events.get(i);
try {
logHierarchyChange(event);
event.getConnector().fireEvent(event);
} catch (final Throwable e) {
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Error sending hierarchy change events", e);
}
}

@@ -2157,13 +2183,14 @@ public class ApplicationConnection implements HasHandlers {
return;
}

VConsole.log("Hierarchy changed for "
+ Util.getConnectorString(event.getConnector()));
getLogger()
.info("Hierarchy changed for "
+ Util.getConnectorString(event.getConnector()));
String oldChildren = "* Old children: ";
for (ComponentConnector child : event.getOldChildren()) {
oldChildren += Util.getConnectorString(child) + " ";
}
VConsole.log(oldChildren);
getLogger().info(oldChildren);

String newChildren = "* New children: ";
HasComponentsConnector parent = (HasComponentsConnector) event
@@ -2171,14 +2198,14 @@ public class ApplicationConnection implements HasHandlers {
for (ComponentConnector child : parent.getChildComponents()) {
newChildren += Util.getConnectorString(child) + " ";
}
VConsole.log(newChildren);
getLogger().info(newChildren);
}

private JsArrayObject<StateChangeEvent> updateConnectorState(
ValueMap json, JsArrayString createdConnectorIds) {
JsArrayObject<StateChangeEvent> events = JavaScriptObject
.createArray().cast();
VConsole.log(" * Updating connector states");
getLogger().info(" * Updating connector states");
if (!json.containsKey("state")) {
return events;
}
@@ -2256,7 +2283,8 @@ public class ApplicationConnection implements HasHandlers {
Profiler.leave("updateConnectorState inner loop");
}
} catch (final Throwable e) {
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Error updating connector states", e);
}
}

@@ -2298,7 +2326,7 @@ public class ApplicationConnection implements HasHandlers {
ValueMap json) {
ConnectorHierarchyUpdateResult result = new ConnectorHierarchyUpdateResult();

VConsole.log(" * Updating connector hierarchy");
getLogger().info(" * Updating connector hierarchy");
if (!json.containsKey("hierarchy")) {
return result;
}
@@ -2330,16 +2358,18 @@ public class ApplicationConnection implements HasHandlers {
ServerConnector childConnector = connectorMap
.getConnector(childConnectorId);
if (childConnector == null) {
VConsole.error("Hierarchy claims that "
+ childConnectorId
+ " is a child for "
+ connectorId
+ " ("
+ parentConnector.getClass().getName()
+ ") but no connector with id "
+ childConnectorId
+ " has been registered. "
+ "More information might be available in the server-side log if assertions are enabled");
getLogger()
.severe("Hierarchy claims that "
+ childConnectorId
+ " is a child for "
+ connectorId
+ " ("
+ parentConnector.getClass()
.getName()
+ ") but no connector with id "
+ childConnectorId
+ " has been registered. "
+ "More information might be available in the server-side log if assertions are enabled");
continue;
}
newChildren.add(childConnector);
@@ -2392,9 +2422,10 @@ public class ApplicationConnection implements HasHandlers {
result.events.add(event);
}
} else if (!newComponents.isEmpty()) {
VConsole.error("Hierachy claims "
+ Util.getConnectorString(parentConnector)
+ " has component children even though it isn't a HasComponentsConnector");
getLogger()
.severe("Hierachy claims "
+ Util.getConnectorString(parentConnector)
+ " has component children even though it isn't a HasComponentsConnector");
}

Profiler.leave("updateConnectorHierarchy handle HasComponentsConnector");
@@ -2428,7 +2459,8 @@ public class ApplicationConnection implements HasHandlers {

Profiler.leave("updateConnectorHierarchy find removed children");
} catch (final Throwable e) {
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Error updating connector hierarchy", e);
} finally {
Profiler.leave("updateConnectorHierarchy hierarchy entry");
}
@@ -2575,7 +2607,8 @@ public class ApplicationConnection implements HasHandlers {
if (json.containsKey("rpc")) {
Profiler.enter("handleRpcInvocations");

VConsole.log(" * Performing server to client RPC calls");
getLogger()
.info(" * Performing server to client RPC calls");

JsonArray rpcCalls = Util.jso2json(json
.getJavaScriptObject("rpc"));
@@ -2595,7 +2628,10 @@ public class ApplicationConnection implements HasHandlers {
}

} catch (final Throwable e) {
VConsole.error(e);
getLogger()
.log(Level.SEVERE,
"Error performing server to client RPC calls",
e);
}
}

@@ -2617,8 +2653,9 @@ public class ApplicationConnection implements HasHandlers {

@Override
public void onError(ResourceLoadEvent event) {
VConsole.error(event.getResourceUrl()
+ " could not be loaded, or the load detection failed because the stylesheet is empty.");
getLogger()
.severe(event.getResourceUrl()
+ " could not be loaded, or the load detection failed because the stylesheet is empty.");
// The show must go on
onLoad(event);
}
@@ -2652,7 +2689,8 @@ public class ApplicationConnection implements HasHandlers {

@Override
public void onError(ResourceLoadEvent event) {
VConsole.error(event.getResourceUrl() + " could not be loaded.");
getLogger().severe(
event.getResourceUrl() + " could not be loaded.");
// The show must go on
onLoad(event);
}
@@ -3143,7 +3181,7 @@ public class ApplicationConnection implements HasHandlers {

layoutManager.forceLayout();

VConsole.log("forceLayout in " + duration.elapsedMillis() + " ms");
getLogger().info("forceLayout in " + duration.elapsedMillis() + " ms");
}

/**
@@ -3419,8 +3457,9 @@ public class ApplicationConnection implements HasHandlers {
*/
@Deprecated
public void unregisterPaintable(ServerConnector p) {
VConsole.log("unregisterPaintable (unnecessarily) called for "
+ Util.getConnectorString(p));
getLogger().info(
"unregisterPaintable (unnecessarily) called for "
+ Util.getConnectorString(p));
}

/**
@@ -3454,8 +3493,10 @@ public class ApplicationConnection implements HasHandlers {
}

if (!manageCaption) {
VConsole.error(Util.getConnectorString(connector)
+ " called updateComponent with manageCaption=false. The parameter was ignored - override delegateCaption() to return false instead. It is however not recommended to use caption this way at all.");
getLogger()
.warning(
Util.getConnectorString(connector)
+ " called updateComponent with manageCaption=false. The parameter was ignored - override delegateCaption() to return false instead. It is however not recommended to use caption this way at all.");
}
return false;
}
@@ -3517,7 +3558,9 @@ public class ApplicationConnection implements HasHandlers {
Timer forceHandleMessage = new Timer() {
@Override
public void run() {
VConsole.log("WARNING: reponse handling was never resumed, forcibly removing locks...");
getLogger()
.warning(
"WARNING: reponse handling was never resumed, forcibly removing locks...");
responseHandlingLocks.clear();
handlePendingMessages();
}
@@ -3545,7 +3588,8 @@ public class ApplicationConnection implements HasHandlers {
forceHandleMessage.cancel();

if (!pendingUIDLMessages.isEmpty()) {
VConsole.log("No more response handling locks, handling pending requests.");
getLogger()
.info("No more response handling locks, handling pending requests.");
handlePendingMessages();
}
}

+ 5
- 1
client/src/com/vaadin/client/ConnectorMap.java View File

@@ -17,6 +17,7 @@ package com.vaadin.client;

import java.util.ArrayList;
import java.util.Collection;
import java.util.logging.Logger;

import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.JavaScriptObject;
@@ -182,7 +183,7 @@ public class ConnectorMap {
*/
public void unregisterConnector(ServerConnector connector) {
if (connector == null) {
VConsole.error("Trying to unregister null connector");
getLogger().severe("Trying to unregister null connector");
return;
}

@@ -299,4 +300,7 @@ public class ConnectorMap {
return getConnectorId(w.getElement()) != null;
}

private static Logger getLogger() {
return Logger.getLogger(ConnectorMap.class.getName());
}
}

+ 16
- 11
client/src/com/vaadin/client/DateTimeService.java View File

@@ -17,6 +17,8 @@
package com.vaadin.client;

import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;

import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.i18n.client.LocaleInfo;
@@ -71,7 +73,7 @@ public class DateTimeService {
try {
return LocaleService.getMonthNames(currentLocale)[month];
} catch (final LocaleNotLoadedException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error in getMonth", e);
return null;
}
}
@@ -80,7 +82,7 @@ public class DateTimeService {
try {
return LocaleService.getShortMonthNames(currentLocale)[month];
} catch (final LocaleNotLoadedException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error in getShortMonth", e);
return null;
}
}
@@ -89,7 +91,7 @@ public class DateTimeService {
try {
return LocaleService.getDayNames(currentLocale)[day];
} catch (final LocaleNotLoadedException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error in getDay", e);
return null;
}
}
@@ -98,7 +100,7 @@ public class DateTimeService {
try {
return LocaleService.getShortDayNames(currentLocale)[day];
} catch (final LocaleNotLoadedException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error in getShortDay", e);
return null;
}
}
@@ -107,7 +109,7 @@ public class DateTimeService {
try {
return LocaleService.getFirstDayOfWeek(currentLocale);
} catch (final LocaleNotLoadedException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error in getFirstDayOfWeek", e);
return 0;
}
}
@@ -116,7 +118,7 @@ public class DateTimeService {
try {
return LocaleService.isTwelveHourClock(currentLocale);
} catch (final LocaleNotLoadedException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error in isTwelveHourClock", e);
return false;
}
}
@@ -125,7 +127,7 @@ public class DateTimeService {
try {
return LocaleService.getClockDelimiter(currentLocale);
} catch (final LocaleNotLoadedException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error in getClockDelimiter", e);
return ":";
}
}
@@ -137,8 +139,8 @@ public class DateTimeService {
return LocaleService.getAmPmStrings(currentLocale);
} catch (final LocaleNotLoadedException e) {
// TODO can this practically even happen? Should die instead?
VConsole.error("Locale not loaded, using fallback : AM/PM");
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Locale not loaded, using fallback : AM/PM", e);
return DEFAULT_AMPM_STRINGS;
}
}
@@ -150,8 +152,8 @@ public class DateTimeService {
try {
firstDay = LocaleService.getFirstDayOfWeek(currentLocale);
} catch (final LocaleNotLoadedException e) {
VConsole.error("Locale not loaded, using fallback 0");
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Locale not loaded, using fallback 0", e);
firstDay = 0;
}
int start = dateForFirstOfThisMonth.getDay() - firstDay;
@@ -496,4 +498,7 @@ public class DateTimeService {

}

public static Logger getLogger() {
return Logger.getLogger(DateTimeService.class.getName());
}
}

+ 13
- 5
client/src/com/vaadin/client/JavaScriptConnectorHelper.java View File

@@ -22,6 +22,7 @@ import java.util.HashSet;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.logging.Logger;

import com.google.gwt.core.client.JavaScriptObject;
import com.google.gwt.core.client.JsArray;
@@ -158,18 +159,21 @@ public class JavaScriptConnectorHelper {
String initFunctionName = serverSideClassName
.replaceAll("\\.", "_");
if (tryInitJs(initFunctionName, getConnectorWrapper())) {
VConsole.log("JavaScript connector initialized using "
+ initFunctionName);
getLogger().info(
"JavaScript connector initialized using "
+ initFunctionName);
this.initFunctionName = initFunctionName;
return true;
} else {
VConsole.log("No JavaScript function " + initFunctionName
+ " found");
getLogger()
.warning(
"No JavaScript function " + initFunctionName
+ " found");
attemptedNames.add(initFunctionName);
tag = conf.getParentTag(tag.intValue());
}
}
VConsole.log("No JavaScript init for connector not found");
getLogger().info("No JavaScript init for connector found");
showInitProblem(attemptedNames);
return false;
}
@@ -497,4 +501,8 @@ public class JavaScriptConnectorHelper {
public String getInitFunctionName() {
return initFunctionName;
}

public static Logger getLogger() {
return Logger.getLogger(JavaScriptConnectorHelper.class.getName());
}
}

+ 44
- 26
client/src/com/vaadin/client/LayoutManager.java View File

@@ -20,6 +20,7 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;

import com.google.gwt.core.client.Duration;
@@ -232,8 +233,9 @@ public class LayoutManager {
}
layoutCounts.put(layout.getConnectorId(), count);
if (count.intValue() > 2) {
VConsole.error(Util.getConnectorString(layout)
+ " has been layouted " + count.intValue() + " times");
getLogger().severe(
Util.getConnectorString(layout) + " has been layouted "
+ count.intValue() + " times");
}
}

@@ -281,7 +283,7 @@ public class LayoutManager {
}

private void doLayout() {
VConsole.log("Starting layout phase");
getLogger().info("Starting layout phase");
Profiler.enter("LayoutManager phase init");

FastStringMap<Integer> layoutCounts = FastStringMap.create();
@@ -335,7 +337,7 @@ public class LayoutManager {

everythingNeedsMeasure = false;
if (measuredConnectorCount == 0) {
VConsole.log("No more changes in pass " + passes);
getLogger().info("No more changes in pass " + passes);
Profiler.leave("Layout pass");
break;
}
@@ -373,7 +375,8 @@ public class LayoutManager {
Profiler.leave(key);
}
} catch (RuntimeException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Error in resize listener", e);
}
}
Profiler.leave("Layout fire resize events - listeners not null");
@@ -417,7 +420,8 @@ public class LayoutManager {
Profiler.leave(key);
}
} catch (RuntimeException e) {
VConsole.error(e);
getLogger().log(Level.SEVERE,
"Error in ManagedLayout handling", e);
}
countLayout(layoutCounts, cl);
} else {
@@ -440,7 +444,11 @@ public class LayoutManager {
Profiler.leave(key);
}
} catch (RuntimeException e) {
VConsole.error(e);
getLogger()
.log(Level.SEVERE,
"Error in SimpleManagedLayout (horizontal) handling",
e);

}
countLayout(layoutCounts, rr);
}
@@ -473,7 +481,10 @@ public class LayoutManager {
Profiler.leave(key);
}
} catch (RuntimeException e) {
VConsole.error(e);
getLogger()
.log(Level.SEVERE,
"Error in DirectionalManagedLayout handling",
e);
}
countLayout(layoutCounts, cl);
} else {
@@ -496,7 +507,10 @@ public class LayoutManager {
Profiler.leave(key);
}
} catch (RuntimeException e) {
VConsole.error(e);
getLogger()
.log(Level.SEVERE,
"Error in SimpleManagedLayout (vertical) handling",
e);
}
countLayout(layoutCounts, rr);
}
@@ -531,18 +545,19 @@ public class LayoutManager {
b.append(connectorString);
}
}
VConsole.log(b.toString());
getLogger().info(b.toString());
}

Profiler.leave("Layout pass");

VConsole.log("Pass " + passes + " measured "
+ measuredConnectorCount + " elements, fired "
+ firedListeners + " listeners and did " + layoutCount
+ " layouts.");
getLogger()
.info("Pass " + passes + " measured "
+ measuredConnectorCount + " elements, fired "
+ firedListeners + " listeners and did "
+ layoutCount + " layouts.");

if (passes > 100) {
VConsole.log(LOOP_ABORT_MESSAGE);
getLogger().severe(LOOP_ABORT_MESSAGE);
if (ApplicationConfiguration.isDebugMode()) {
VNotification.createNotification(
VNotification.DELAY_FOREVER,
@@ -579,8 +594,9 @@ public class LayoutManager {

cleanMeasuredSizes();

VConsole.log("Total layout phase time: "
+ totalDuration.elapsedMillis() + "ms");
getLogger().info(
"Total layout phase time: " + totalDuration.elapsedMillis()
+ "ms");
}

private void logConnectorStatus(int connectorId) {
@@ -614,11 +630,12 @@ public class LayoutManager {
}

if (debugLogging) {
VConsole.log("Doing overflow fix for "
+ Util.getConnectorString(componentConnector)
+ " in "
+ Util.getConnectorString(componentConnector
.getParent()));
getLogger()
.info("Doing overflow fix for "
+ Util.getConnectorString(componentConnector)
+ " in "
+ Util.getConnectorString(componentConnector
.getParent()));
}
Profiler.enter("Overflow fix apply");

@@ -669,8 +686,8 @@ public class LayoutManager {
Profiler.leave("Overflow fix restore");

if (!pendingOverflowFixes.isEmpty()) {
VConsole.log("Did overflow fix for " + remainingCount
+ " elements");
getLogger().info(
"Did overflow fix for " + remainingCount + " elements");
}
pendingOverflowFixes = delayedOverflowFixes;
}
@@ -794,8 +811,9 @@ public class LayoutManager {
measuredAndUpdate(element, getMeasuredSize(element, null));
}
Profiler.leave("LayoutManager.measureNonConenctors");
VConsole.log("Measured " + measuredNonConnectorElements.size()
+ " non connector elements");
getLogger().info(
"Measured " + measuredNonConnectorElements.size()
+ " non connector elements");
}

private MeasureResult measuredAndUpdate(Element element,

+ 9
- 2
client/src/com/vaadin/client/MeasuredSize.java View File

@@ -15,6 +15,8 @@
*/
package com.vaadin.client;

import java.util.logging.Logger;

import com.google.gwt.core.client.JsArrayString;
import com.google.gwt.dom.client.Element;

@@ -276,8 +278,9 @@ public class MeasuredSize {
private void debugSizeChange(Element element, String sizeChangeType,
String changedFrom, String changedTo) {
if (debugSizeChanges) {
VConsole.log(sizeChangeType + " has changed from " + changedFrom
+ " to " + changedTo + " for " + element.toString());
getLogger()
.info(sizeChangeType + " has changed from " + changedFrom
+ " to " + changedTo + " for " + element.toString());
}
}

@@ -289,4 +292,8 @@ public class MeasuredSize {
return sizes1[0] != sizes2[0] || sizes1[2] != sizes2[2];
}

public static Logger getLogger() {
return Logger.getLogger(MeasuredSize.class.getName());
}

}

+ 17
- 9
client/src/com/vaadin/client/SuperDevMode.java View File

@@ -15,6 +15,8 @@
*/
package com.vaadin.client;

import java.util.logging.Logger;

import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.JavaScriptObject;
import com.google.gwt.http.client.UrlBuilder;
@@ -51,8 +53,9 @@ public class SuperDevMode {

private static void recompileWidgetsetAndStartInDevMode(
final String serverUrl) {
VConsole.log("Recompiling widgetset using<br/>" + serverUrl
+ "<br/>and then reloading in super dev mode");
getLogger().info(
"Recompiling widgetset using<br/>" + serverUrl
+ "<br/>and then reloading in super dev mode");
VNotification n = new VNotification();
n.show("<b>Recompiling widgetset, please wait</b>",
VNotification.CENTERED, VNotification.STYLE_SYSTEM);
@@ -66,10 +69,10 @@ public class SuperDevMode {

@Override
public void onSuccess(RecompileResult result) {
VConsole.log("JSONP compile call successful");
getLogger().fine("JSONP compile call successful");

if (!result.ok()) {
VConsole.log("* result: " + result);
getLogger().fine("* result: " + result);
failed();
return;
}
@@ -80,17 +83,18 @@ public class SuperDevMode {
serverUrl));
setSession(SKIP_RECOMPILE, "1");

VConsole.log("* result: OK. Reloading");
getLogger().fine("* result: OK. Reloading");
Location.reload();
}

@Override
public void onFailure(Throwable caught) {
VConsole.error("JSONP compile call failed");
getLogger().severe("JSONP compile call failed");
// Don't log exception as they are shown as
// notifications
VConsole.error(caught.getClass().getSimpleName() + ": "
+ caught.getMessage());
getLogger().severe(
caught.getClass().getSimpleName() + ": "
+ caught.getMessage());
failed();

}
@@ -189,7 +193,7 @@ public class SuperDevMode {
}

if (hasSession(SKIP_RECOMPILE)) {
VConsole.log("Running in SuperDevMode");
getLogger().info("Running in SuperDevMode");
// When we get here, we are running in super dev mode

// Remove the flag so next reload will recompile
@@ -260,4 +264,8 @@ public class SuperDevMode {
VNotification n = new VNotification();
n.show(message, VNotification.CENTERED_TOP, VNotification.STYLE_SYSTEM);
}

public static Logger getLogger() {
return Logger.getLogger(SuperDevMode.class.getName());
}
}

+ 15
- 7
client/src/com/vaadin/client/Util.java View File

@@ -21,6 +21,8 @@ import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.JavaScriptObject;
@@ -593,10 +595,11 @@ public class Util {
ApplicationConnection c) {
ServerConnector connector = ConnectorMap.get(c).getConnector(id);
if (connector != null) {
VConsole.log("\t" + id + " (" + connector.getClass() + ") :");
getLogger().info("\t" + id + " (" + connector.getClass() + ") :");
} else {
VConsole.log("\t" + id
+ ": Warning: no corresponding connector for id " + id);
getLogger().warning(
"\t" + id + ": Warning: no corresponding connector for id "
+ id);
}
for (MethodInvocation invocation : invocations) {
Object[] parameters = invocation.getParameters();
@@ -615,15 +618,17 @@ public class Util {
formattedParams = (null != parameters) ? Arrays
.toString(parameters) : null;
}
VConsole.log("\t\t" + invocation.getInterfaceName() + "."
+ invocation.getMethodName() + "(" + formattedParams + ")");
getLogger().info(
"\t\t" + invocation.getInterfaceName() + "."
+ invocation.getMethodName() + "("
+ formattedParams + ")");
}
}

static void logVariableBurst(ApplicationConnection c,
Collection<MethodInvocation> loggedBurst) {
try {
VConsole.log("Variable burst to be sent to server:");
getLogger().info("Variable burst to be sent to server:");
String curId = null;
ArrayList<MethodInvocation> invocations = new ArrayList<MethodInvocation>();
for (MethodInvocation methodInvocation : loggedBurst) {
@@ -642,7 +647,7 @@ public class Util {
printConnectorInvocations(invocations, curId, c);
}
} catch (Exception e) {
VConsole.error(e);
getLogger().log(Level.SEVERE, "Error sending variable burst", e);
}
}

@@ -959,4 +964,7 @@ public class Util {
return JSON.parse(jsonAsString);
}-*/;

public static Logger getLogger() {
return Logger.getLogger(Util.class.getName());
}
}

+ 8
- 1
client/src/com/vaadin/client/VCaption.java View File

@@ -16,6 +16,8 @@

package com.vaadin.client;

import java.util.logging.Logger;

import com.google.gwt.aria.client.Roles;
import com.google.gwt.dom.client.Element;
import com.google.gwt.dom.client.Style.Unit;
@@ -445,7 +447,9 @@ public class VCaption extends HTML {
if (owner != null) {
Util.notifyParentOfSizeChange(owner.getWidget(), true);
} else {
VConsole.log("Warning: Icon load event was not propagated because VCaption owner is unknown.");
getLogger()
.warning(
"Warning: Icon load event was not propagated because VCaption owner is unknown.");
}
}
}
@@ -766,4 +770,7 @@ public class VCaption extends HTML {

}

public static Logger getLogger() {
return Logger.getLogger(VCaption.class.getName());
}
}

+ 8
- 1
client/src/com/vaadin/client/WidgetSet.java View File

@@ -16,6 +16,9 @@

package com.vaadin.client;

import java.util.logging.Level;
import java.util.logging.Logger;

import com.google.gwt.core.client.GWT;
import com.vaadin.client.communication.HasJavaScriptConnectorHelper;
import com.vaadin.client.metadata.BundleLoadCallback;
@@ -132,11 +135,15 @@ public class WidgetSet {

@Override
public void failed(Throwable reason) {
VConsole.error(reason);
getLogger().log(Level.SEVERE, "Error loading bundle",
reason);
ApplicationConfiguration.endDependencyLoading();
}
});
}
}

public static Logger getLogger() {
return Logger.getLogger(WidgetSet.class.getName());
}
}

+ 25
- 18
client/src/com/vaadin/client/communication/AtmospherePushConnection.java View File

@@ -17,6 +17,7 @@
package com.vaadin.client.communication;

import java.util.ArrayList;
import java.util.logging.Logger;

import com.google.gwt.core.client.JavaScriptObject;
import com.google.gwt.core.client.Scheduler;
@@ -30,7 +31,6 @@ import com.vaadin.client.ApplicationConnection.CommunicationErrorHandler;
import com.vaadin.client.ResourceLoader;
import com.vaadin.client.ResourceLoader.ResourceLoadEvent;
import com.vaadin.client.ResourceLoader.ResourceLoadListener;
import com.vaadin.client.VConsole;
import com.vaadin.shared.ApplicationConstants;
import com.vaadin.shared.Version;
import com.vaadin.shared.communication.PushConstants;
@@ -210,7 +210,7 @@ public class AtmospherePushConnection implements PushConnection {
// uri is needed to identify the right connection when closing
uri = SharedUtil.addGetParameters(baseUrl, extraParams);

VConsole.log("Establishing push connection");
getLogger().info("Establishing push connection");
socket = doConnect(uri, getConfig());
}

@@ -230,12 +230,12 @@ public class AtmospherePushConnection implements PushConnection {
switch (state) {
case CONNECT_PENDING:
assert isActive();
VConsole.log("Queuing push message: " + message.toJson());
getLogger().info("Queuing push message: " + message.toJson());
messageQueue.add(message);
break;
case CONNECTED:
assert isActive();
VConsole.log("Sending push message: " + message.toJson());
getLogger().info("Sending push message: " + message.toJson());

if (transport.equals("websocket")) {
FragmentedMessage fragmented = new FragmentedMessage(
@@ -258,14 +258,15 @@ public class AtmospherePushConnection implements PushConnection {
}

protected void onReopen(AtmosphereResponse response) {
VConsole.log("Push connection re-established using "
+ response.getTransport());
getLogger().info(
"Push connection re-established using "
+ response.getTransport());
onConnect(response);
}

protected void onOpen(AtmosphereResponse response) {
VConsole.log("Push connection established using "
+ response.getTransport());
getLogger().info(
"Push connection established using " + response.getTransport());
onConnect(response);
}

@@ -321,7 +322,7 @@ public class AtmospherePushConnection implements PushConnection {
break;
case CONNECTED:
// Normal disconnect
VConsole.log("Closing push connection");
getLogger().info("Closing push connection");
doDisconnect(uri);
state = State.DISCONNECTED;
command.execute();
@@ -335,7 +336,7 @@ public class AtmospherePushConnection implements PushConnection {
protected void onMessage(AtmosphereResponse response) {
String message = response.getResponseBody();
if (message.startsWith("for(;;);")) {
VConsole.log("Received push message: " + message);
getLogger().info("Received push message: " + message);
// "for(;;);[{json}]" -> "{json}"
message = message.substring(9, message.length() - 1);
connection.handlePushMessage(message);
@@ -347,9 +348,10 @@ public class AtmospherePushConnection implements PushConnection {
* tried
*/
protected void onTransportFailure() {
VConsole.log("Push connection using primary method ("
+ getConfig().getTransport() + ") failed. Trying with "
+ getConfig().getFallbackTransport());
getLogger().warning(
"Push connection using primary method ("
+ getConfig().getTransport() + ") failed. Trying with "
+ getConfig().getFallbackTransport());
}

/**
@@ -365,7 +367,7 @@ public class AtmospherePushConnection implements PushConnection {
}

protected void onClose(AtmosphereResponse response) {
VConsole.log("Push connection closed");
getLogger().info("Push connection closed");
state = State.CONNECT_PENDING;
}

@@ -380,10 +382,11 @@ public class AtmospherePushConnection implements PushConnection {
protected void onReconnect(JavaScriptObject request,
final AtmosphereResponse response) {
if (state == State.CONNECTED) {
VConsole.log("No onClose was received before reconnect. Forcing state to closed.");
getLogger()
.fine("No onClose was received before reconnect. Forcing state to closed.");
state = State.CONNECT_PENDING;
}
VConsole.log("Reopening push connection");
getLogger().info("Reopening push connection");
}

public static abstract class AbstractJSO extends JavaScriptObject {
@@ -535,14 +538,14 @@ public class AtmospherePushConnection implements PushConnection {
} else {
final String pushJs = getVersionedPushJs();

VConsole.log("Loading " + pushJs);
getLogger().info("Loading " + pushJs);
ResourceLoader.get().loadScript(
connection.getConfiguration().getVaadinDirUrl() + pushJs,
new ResourceLoadListener() {
@Override
public void onLoad(ResourceLoadEvent event) {
if (isAtmosphereLoaded()) {
VConsole.log(pushJs + " loaded");
getLogger().info(pushJs + " loaded");
command.execute();
} else {
// If bootstrap tried to load vaadinPush.js,
@@ -584,4 +587,8 @@ public class AtmospherePushConnection implements PushConnection {
public String getTransportType() {
return transport;
}

public static Logger getLogger() {
return Logger.getLogger(AtmospherePushConnection.class.getName());
}
}

+ 5
- 2
client/src/com/vaadin/client/communication/RpcManager.java View File

@@ -17,11 +17,11 @@
package com.vaadin.client.communication;

import java.util.Collection;
import java.util.logging.Logger;

import com.vaadin.client.ApplicationConnection;
import com.vaadin.client.ConnectorMap;
import com.vaadin.client.ServerConnector;
import com.vaadin.client.VConsole;
import com.vaadin.client.metadata.Method;
import com.vaadin.client.metadata.NoDataException;
import com.vaadin.client.metadata.Type;
@@ -122,7 +122,7 @@ public class RpcManager {
}

parseMethodParameters(invocation, parametersJson, connection);
VConsole.log("Server to client RPC call: " + invocation);
getLogger().info("Server to client RPC call: " + invocation);
applyInvocation(invocation, connector);
}

@@ -142,4 +142,7 @@ public class RpcManager {
methodInvocation.setParameters(parameters);
}

public static Logger getLogger() {
return Logger.getLogger(RpcManager.class.getName());
}
}

+ 7
- 2
client/src/com/vaadin/client/debug/internal/ConnectorInfoPanel.java View File

@@ -18,13 +18,14 @@ package com.vaadin.client.debug.internal;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;

import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.HTML;
import com.vaadin.client.ComponentConnector;
import com.vaadin.client.JsArrayObject;
import com.vaadin.client.ServerConnector;
import com.vaadin.client.VConsole;
import com.vaadin.client.WidgetUtil;
import com.vaadin.client.metadata.NoDataException;
import com.vaadin.client.metadata.Property;
@@ -84,7 +85,7 @@ public class ConnectorInfoPanel extends FlowPanel {
}
} catch (NoDataException e) {
html += "<div>Could not read state, error has been logged to the console</div>";
VConsole.error(e);
getLogger().log(Level.SEVERE, "Could not read state", e);
}

clear();
@@ -105,4 +106,8 @@ public class ConnectorInfoPanel extends FlowPanel {
public void clearContents() {
clear();
}

public static Logger getLogger() {
return Logger.getLogger(ConnectorInfoPanel.class.getName());
}
}

+ 6
- 2
client/src/com/vaadin/client/debug/internal/OptimizedWidgetsetPanel.java View File

@@ -17,6 +17,7 @@ package com.vaadin.client.debug.internal;

import java.util.HashSet;
import java.util.Set;
import java.util.logging.Logger;

import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.HTML;
@@ -24,7 +25,6 @@ import com.vaadin.client.ApplicationConfiguration;
import com.vaadin.client.ApplicationConnection;
import com.vaadin.client.ServerConnector;
import com.vaadin.client.Util;
import com.vaadin.client.VConsole;
import com.vaadin.client.ui.UnknownComponentConnector;

/**
@@ -95,7 +95,8 @@ public class OptimizedWidgetsetPanel extends FlowPanel {
tag++;
if (tag > 10000) {
// Sanity check
VConsole.error("Search for used connector classes was forcefully terminated");
getLogger()
.severe("Search for used connector classes was forcefully terminated");
break;
}
}
@@ -136,4 +137,7 @@ public class OptimizedWidgetsetPanel extends FlowPanel {
return s;
}

public static Logger getLogger() {
return Logger.getLogger(OptimizedWidgetsetPanel.class.getName());
}
}

Loading…
Cancel
Save