Author: rombert
Date: Tue Feb 17 23:06:25 2015
New Revision: 1660532
URL: http://svn.apache.org/r1660532
Log:
SLING-4374 - Intermittent error when publishing content
Track the repository as connected when connecting in debug mode as well.
Also fail early when a repository can't be looked up
Modified:
sling/trunk/tooling/ide/eclipse-core/src/org/apache/sling/ide/eclipse/core/internal/SlingLaunchpadBehaviour.java
Modified:
sling/trunk/tooling/ide/eclipse-core/src/org/apache/sling/ide/eclipse/core/internal/SlingLaunchpadBehaviour.java
URL:
http://svn.apache.org/viewvc/sling/trunk/tooling/ide/eclipse-core/src/org/apache/sling/ide/eclipse/core/internal/SlingLaunchpadBehaviour.java?rev=1660532&r1=1660531&r2=1660532&view=diff
==============================================================================
---
sling/trunk/tooling/ide/eclipse-core/src/org/apache/sling/ide/eclipse/core/internal/SlingLaunchpadBehaviour.java
(original)
+++
sling/trunk/tooling/ide/eclipse-core/src/org/apache/sling/ide/eclipse/core/internal/SlingLaunchpadBehaviour.java
Tue Feb 17 23:06:25 2015
@@ -84,22 +84,24 @@ public class SlingLaunchpadBehaviour ext
Result<ResourceProxy> result = null;
monitor.beginTask("Starting server", 5);
+ Repository repository;
+ try {
+ repository = ServerUtil.connectRepository(getServer(), monitor);
+ } catch (CoreException e) {
+ setServerState(IServer.STATE_STOPPED);
+ throw e;
+ }
+
+ monitor.worked(2); // 2/5 done
+
try {
if (getServer().getMode().equals(ILaunchManager.DEBUG_MODE)) {
debuggerConnection = new JVMDebuggerConnection();
success = debuggerConnection.connectInDebugMode(launch,
getServer(), monitor);
- } else {
+ monitor.worked(3); // 5/5 done
- Repository repository;
- try {
- repository = ServerUtil.connectRepository(getServer(),
monitor);
- } catch (CoreException e) {
- setServerState(IServer.STATE_STOPPED);
- throw e;
- }
-
- monitor.worked(2); // 2/5 done
+ } else {
Command<ResourceProxy> command =
repository.newListChildrenNodeCommand("/");
result = command.execute();
@@ -366,6 +368,10 @@ public class SlingLaunchpadBehaviour ext
Logger logger = Activator.getDefault().getPluginLogger();
Repository repository =
ServerUtil.getConnectedRepository(getServer(), monitor);
+ if (repository == null) {
+ throw new CoreException(new Status(IStatus.ERROR,
Activator.PLUGIN_ID,
+ "Unable to find a repository for server " + getServer()));
+ }
// TODO it would be more efficient to have a module -> filter mapping
// it would be simpler to implement this in SlingContentModuleAdapter,
but