diff --git a/zanata-war/src/main/java/org/zanata/action/ViewAllStatusAction.java b/zanata-war/src/main/java/org/zanata/action/ViewAllStatusAction.java index dd21d4a8f9..de530c8217 100644 --- a/zanata-war/src/main/java/org/zanata/action/ViewAllStatusAction.java +++ b/zanata-war/src/main/java/org/zanata/action/ViewAllStatusAction.java @@ -407,7 +407,7 @@ public String getCopyTransStartTime() public String getCopyTransEstimatedTimeLeft() { CopyTransTaskHandle handle = copyTransManager.getCopyTransProcessHandle(getProjectIteration()); - return formatTimePeriod(handle.getEstimatedTimeInMillis()); + return formatTimePeriod(handle.getEstimatedTimeRemaining()); } // FIXME this is not localizable diff --git a/zanata-war/src/main/java/org/zanata/async/TimedAsyncHandle.java b/zanata-war/src/main/java/org/zanata/async/TimedAsyncHandle.java index 7145114dc5..0e5753cedc 100644 --- a/zanata-war/src/main/java/org/zanata/async/TimedAsyncHandle.java +++ b/zanata-war/src/main/java/org/zanata/async/TimedAsyncHandle.java @@ -49,7 +49,7 @@ public void finishTiming() * @return The estimated time (in milliseconds) remaining for completion of the process. * If the system is not able to provide an estimate, this method returns -1. */ - public long getEstimatedTimeInMillis() + public long getEstimatedTimeRemaining() { if( this.startTime > 0 && currentProgress > 0 ) { diff --git a/zanata-war/src/main/java/org/zanata/async/tasks/ZipFileBuildTask.java b/zanata-war/src/main/java/org/zanata/async/tasks/ZipFileBuildTask.java index e22a982ddb..c54ec42d79 100644 --- a/zanata-war/src/main/java/org/zanata/async/tasks/ZipFileBuildTask.java +++ b/zanata-war/src/main/java/org/zanata/async/tasks/ZipFileBuildTask.java @@ -129,7 +129,6 @@ public String call() throws Exception String downloadId = fileSystemService.createDownloadDescriptorFile(downloadFile, projectSlug + "_" + iterationSlug + "_" + localeId + ".zip", userName); - //zipHandle.setDownloadId(downloadId); // Add the config file at the root of the project directory String configFilename = projectDirectory + configurationService.getConfigurationFileName(); diff --git a/zanata-war/src/main/java/org/zanata/rest/service/AsynchronousProcessResourceService.java b/zanata-war/src/main/java/org/zanata/rest/service/AsynchronousProcessResourceService.java index c12cdc6eeb..e1c45a5c62 100644 --- a/zanata-war/src/main/java/org/zanata/rest/service/AsynchronousProcessResourceService.java +++ b/zanata-war/src/main/java/org/zanata/rest/service/AsynchronousProcessResourceService.java @@ -172,7 +172,7 @@ public Void call() throws Exception (DocumentService)Component.getInstance(DocumentServiceImpl.class); documentServiceImpl.saveDocument( projectSlug, iterationSlug, resource, extensions, copytrans, true); - getHandle().setCurrentProgress( getHandle().getMaxProgress() ); // TODO This should update with real progress + // TODO This should update with real progress return null; } }; diff --git a/zanata-war/src/main/java/org/zanata/service/impl/AsyncTaskManagerServiceImpl.java b/zanata-war/src/main/java/org/zanata/service/impl/AsyncTaskManagerServiceImpl.java index c669fb3c82..47b317e05f 100644 --- a/zanata-war/src/main/java/org/zanata/service/impl/AsyncTaskManagerServiceImpl.java +++ b/zanata-war/src/main/java/org/zanata/service/impl/AsyncTaskManagerServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2010, Red Hat, Inc. and individual contributors as indicated by the + * Copyright 2013, Red Hat, Inc. and individual contributors as indicated by the * @author tags. See the copyright.txt file in the distribution for a full * listing of individual contributors. * @@ -65,17 +65,16 @@ public class AsyncTaskManagerServiceImpl implements AsyncTaskManagerService private ConcurrentMap handlesByKey = Maps.newConcurrentMap(); + private long lastAssignedKey = 1; + @Override public > String startTask(AsyncTask task) { TaskExecutor taskExecutor = (TaskExecutor) Component.getInstance(TaskExecutor.class); AsyncTaskHandle handle = taskExecutor.startTask(task); Long taskKey; - synchronized (handlesById) - { - taskKey = generateNextAvailableKey(); - handlesById.put(taskKey, handle); - } + taskKey = generateNextAvailableKey(); + handlesById.put(taskKey, handle); return taskKey.toString(); } @@ -138,22 +137,9 @@ public Collection getAllHandles() return handlesById.asMap().values(); } - private Long generateNextAvailableKey() + private synchronized long generateNextAvailableKey() { - // Sorted set of keys (to find an available one) - Set keys = new TreeSet( handlesById.asMap().keySet() ); - - // Find the next available key - long keyCandidate = 1; - for( Long key : keys ) - { - if( keyCandidate != key.longValue() ) - { - return keyCandidate; - } - keyCandidate++; - } - return keyCandidate; + return lastAssignedKey++; } }