public static DownloadObjectsEvent newInProgressEvent(ThreadWatcher threadWatcher, S3Object[] completedObjects, Object uniqueOperationId) { DownloadObjectsEvent event = new DownloadObjectsEvent(EVENT_IN_PROGRESS, uniqueOperationId); event.setThreadWatcher(threadWatcher); event.setObjects(completedObjects); return event; }
/** * @return * the S3Objects that were not downloaded before the operation was cancelled. * @throws IllegalStateException * cancelled objects are only available from EVENT_CANCELLED events. */ public S3Object[] getCancelledObjects() throws IllegalStateException { if (getEventCode() != EVENT_CANCELLED) { throw new IllegalStateException("Cancelled Objects are only available from EVENT_CANCELLED events"); } return objects; }
public static DownloadObjectsEvent newIgnoredErrorsEvent(ThreadWatcher threadWatcher, Throwable[] ignoredErrors, Object uniqueOperationId) { DownloadObjectsEvent event = new DownloadObjectsEvent(EVENT_IGNORED_ERRORS, uniqueOperationId); event.setIgnoredErrors(ignoredErrors); return event; }
public static DownloadObjectsEvent newErrorEvent(Throwable t, Object uniqueOperationId) { DownloadObjectsEvent event = new DownloadObjectsEvent(EVENT_ERROR, uniqueOperationId); event.setErrorCause(t); return event; }
if (ServiceEvent.EVENT_STARTED == event.getEventCode()) { ThreadWatcher watcher = event.getThreadWatcher(); startProgressPanel(event.getUniqueOperationId(), "Download " + byteFormatterTerse.formatByteSize(watcher.getBytesTransferred()) + "/" + byteFormatterTerse.formatByteSize(watcher.getBytesTotal()), 100, event.getThreadWatcher().getCancelEventListener()); startProgressPanel(event.getUniqueOperationId(), "Download " + event.getThreadWatcher().getCompletedThreads() + "/" + event.getThreadWatcher().getThreadCount(), (int) event.getThreadWatcher().getThreadCount(), event.getThreadWatcher().getCancelEventListener()); else if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { ThreadWatcher watcher = event.getThreadWatcher(); int percentage = (int) (((double)watcher.getBytesTransferred() / watcher.getBytesTotal()) * 100); updateProgressPanel(event.getUniqueOperationId(), "Download " + byteFormatterTerse.formatByteSize(watcher.getBytesTransferred()) ThreadWatcher progressStatus = event.getThreadWatcher(); String statusText = "Download " + progressStatus.getCompletedThreads() + " of " + progressStatus.getThreadCount() + " objects"; updateProgressPanel(event.getUniqueOperationId(), statusText, (int) progressStatus.getCompletedThreads());
if (ServiceEvent.EVENT_STARTED == event.getEventCode()) { ThreadWatcher watcher = event.getThreadWatcher(); else if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { ThreadWatcher watcher = event.getThreadWatcher(); ThreadWatcher progressStatus = event.getThreadWatcher(); String statusText = "Downloaded " + progressStatus.getCompletedThreads() + " of " + progressStatus.getThreadCount() + " objects"; updateProgressDialog(statusText, "", (int) progressStatus.getCompletedThreads()); } else if (ServiceEvent.EVENT_COMPLETED == event.getEventCode()) { stopProgressDialog(); else if (ServiceEvent.EVENT_CANCELLED == event.getEventCode()) { stopProgressDialog(); else if (ServiceEvent.EVENT_ERROR == event.getEventCode()) { stopProgressDialog(); log.error(message, event.getErrorCause()); ErrorDialog.showDialog(ownerFrame, this, message, event.getErrorCause());
@Override public void s3ServiceEventPerformed(DownloadObjectsEvent event) { super.s3ServiceEventPerformed(event); if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { objectList.addAll(Arrays.asList(event.getDownloadedObjects())); } }; };
public static DownloadObjectsEvent newCancelledEvent(S3Object[] incompletedObjects, Object uniqueOperationId) { DownloadObjectsEvent event = new DownloadObjectsEvent(EVENT_CANCELLED, uniqueOperationId); event.setObjects(incompletedObjects); return event; }
public static DownloadObjectsEvent newStartedEvent(ThreadWatcher threadWatcher, Object uniqueOperationId) { DownloadObjectsEvent event = new DownloadObjectsEvent(EVENT_STARTED, uniqueOperationId); event.setThreadWatcher(threadWatcher); return event; }
@Override public void fireCompletedEvent() { fireServiceEvent(DownloadObjectsEvent.newCompletedEvent(uniqueOperationId)); } @Override
@Override public void fireErrorEvent(Throwable throwable) { success[0] = false; fireServiceEvent(DownloadObjectsEvent.newErrorEvent(throwable, uniqueOperationId)); } @Override
@Override public void fireCancelEvent() { S3Object[] incompleteObjects = (S3Object[]) incompleteObjectDownloadList .toArray(new S3Object[incompleteObjectDownloadList.size()]); success[0] = false; fireServiceEvent(DownloadObjectsEvent.newCancelledEvent(incompleteObjects, uniqueOperationId)); } @Override
@Override public void fireIgnoredErrorsEvent(ThreadWatcher threadWatcher, Throwable[] ignoredErrors) { success[0] = false; fireServiceEvent(DownloadObjectsEvent.newIgnoredErrorsEvent(threadWatcher, ignoredErrors, uniqueOperationId)); } }).run();
public static DownloadObjectsEvent newCompletedEvent(Object uniqueOperationId) { DownloadObjectsEvent event = new DownloadObjectsEvent(EVENT_COMPLETED, uniqueOperationId); return event; }
if (ServiceEvent.EVENT_STARTED == event.getEventCode()) { ThreadWatcher watcher = event.getThreadWatcher(); startProgressPanel(event.getUniqueOperationId(), "Download " + byteFormatterTerse.formatByteSize(watcher.getBytesTransferred()) + "/" + byteFormatterTerse.formatByteSize(watcher.getBytesTotal()), 100, event.getThreadWatcher().getCancelEventListener()); startProgressPanel(event.getUniqueOperationId(), "Download " + event.getThreadWatcher().getCompletedThreads() + "/" + event.getThreadWatcher().getThreadCount(), (int) event.getThreadWatcher().getThreadCount(), event.getThreadWatcher().getCancelEventListener()); else if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { ThreadWatcher watcher = event.getThreadWatcher(); int percentage = (int) (((double)watcher.getBytesTransferred() / watcher.getBytesTotal()) * 100); updateProgressPanel(event.getUniqueOperationId(), "Download " + byteFormatterTerse.formatByteSize(watcher.getBytesTransferred()) ThreadWatcher progressStatus = event.getThreadWatcher(); String statusText = "Download " + progressStatus.getCompletedThreads() + " of " + progressStatus.getThreadCount() + " objects"; updateProgressPanel(event.getUniqueOperationId(), statusText, (int) progressStatus.getCompletedThreads());
if (ServiceEvent.EVENT_STARTED == event.getEventCode()) { ThreadWatcher watcher = event.getThreadWatcher(); else if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { ThreadWatcher watcher = event.getThreadWatcher(); ThreadWatcher progressStatus = event.getThreadWatcher(); String statusText = "Downloaded " + progressStatus.getCompletedThreads() + " of " + progressStatus.getThreadCount() + " objects"; updateProgressDialog(statusText, "", (int) progressStatus.getCompletedThreads()); } else if (ServiceEvent.EVENT_COMPLETED == event.getEventCode()) { stopProgressDialog(); else if (ServiceEvent.EVENT_CANCELLED == event.getEventCode()) { stopProgressDialog(); else if (ServiceEvent.EVENT_ERROR == event.getEventCode()) { stopProgressDialog(); log.error(message, event.getErrorCause()); ErrorDialog.showDialog(ownerFrame, this, message, event.getErrorCause());
public static DownloadObjectsEvent newIgnoredErrorsEvent(ThreadWatcher threadWatcher, Throwable[] ignoredErrors, Object uniqueOperationId) { DownloadObjectsEvent event = new DownloadObjectsEvent(EVENT_IGNORED_ERRORS, uniqueOperationId); event.setIgnoredErrors(ignoredErrors); return event; }
@Override public void s3ServiceEventPerformed(DownloadObjectsEvent event) { super.s3ServiceEventPerformed(event); if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { objectList.addAll(Arrays.asList(event.getDownloadedObjects())); } }; };
public static DownloadObjectsEvent newErrorEvent(Throwable t, Object uniqueOperationId) { DownloadObjectsEvent event = new DownloadObjectsEvent(EVENT_ERROR, uniqueOperationId); event.setErrorCause(t); return event; }
public static DownloadObjectsEvent newCancelledEvent(S3Object[] incompletedObjects, Object uniqueOperationId) { DownloadObjectsEvent event = new DownloadObjectsEvent(EVENT_CANCELLED, uniqueOperationId); event.setObjects(incompletedObjects); return event; }