public static DeleteObjectsEvent newInProgressEvent(ThreadWatcher threadWatcher, S3Object[] deletedObjects, Object uniqueOperationId) { DeleteObjectsEvent event = new DeleteObjectsEvent(EVENT_IN_PROGRESS, uniqueOperationId); event.setThreadWatcher(threadWatcher); event.setObjects(deletedObjects); return event; }
public void run() { for (int i = 0; i < event.getDeletedObjects().length; i++) { objectTableModel.removeObject( event.getDeletedObjects()[i]); } if (event.getDeletedObjects().length > 0) { updateObjectsSummary(true); } } });
/** * @return * the S3Objects that have been deleted since the last progress event was fired. * @throws IllegalStateException * deleted objects are only available from EVENT_IN_PROGRESS events. */ public S3Object[] getDeletedObjects() throws IllegalStateException { if (getEventCode() != EVENT_IN_PROGRESS) { throw new IllegalStateException("Deleted Objects are only available from EVENT_IN_PROGRESS events"); } return objects; }
public static DeleteObjectsEvent newIgnoredErrorsEvent(ThreadWatcher threadWatcher, Throwable[] ignoredErrors, Object uniqueOperationId) { DeleteObjectsEvent event = new DeleteObjectsEvent(EVENT_IGNORED_ERRORS, uniqueOperationId); event.setIgnoredErrors(ignoredErrors); return event; }
public static DeleteObjectsEvent newErrorEvent(Throwable t, Object uniqueOperationId) { DeleteObjectsEvent event = new DeleteObjectsEvent(EVENT_ERROR, uniqueOperationId); event.setErrorCause(t); return event; }
if (ServiceEvent.EVENT_STARTED == event.getEventCode()) { startProgressDialog( "Deleted 0 of " + event.getThreadWatcher().getThreadCount() + " objects", "", 0, (int) event.getThreadWatcher().getThreadCount(), "Cancel Delete Objects", event.getThreadWatcher().getCancelEventListener()); else if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { SwingUtilities.invokeLater(new Runnable() { public void run() { ThreadWatcher progressStatus = event.getThreadWatcher(); String statusText = "Deleted " + 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(DeleteObjectsEvent event) { super.s3ServiceEventPerformed(event); if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { objectList.addAll(Arrays.asList(event.getDeletedObjects())); } }; };
public static DeleteObjectsEvent newStartedEvent(ThreadWatcher threadWatcher, Object uniqueOperationId) { DeleteObjectsEvent event = new DeleteObjectsEvent(EVENT_STARTED, uniqueOperationId); event.setThreadWatcher(threadWatcher); return event; }
public static DeleteObjectsEvent newCancelledEvent(S3Object[] remainingObjects, Object uniqueOperationId) { DeleteObjectsEvent event = new DeleteObjectsEvent(EVENT_CANCELLED, uniqueOperationId); event.setObjects(remainingObjects); return event; }
@Override public void fireCompletedEvent() { fireServiceEvent(DeleteObjectsEvent.newCompletedEvent(uniqueOperationId)); } @Override
@Override public void fireIgnoredErrorsEvent(ThreadWatcher threadWatcher, Throwable[] ignoredErrors) { success[0] = false; fireServiceEvent(DeleteObjectsEvent.newIgnoredErrorsEvent(threadWatcher, ignoredErrors, uniqueOperationId)); } }).run();
@Override public void fireCancelEvent() { S3Object[] remainingObjects = (S3Object[]) objectsToDeleteList .toArray(new S3Object[objectsToDeleteList.size()]); success[0] = false; fireServiceEvent(DeleteObjectsEvent.newCancelledEvent(remainingObjects, uniqueOperationId)); } @Override
@Override public void fireProgressEvent(ThreadWatcher threadWatcher, List completedResults) { objectsToDeleteList.removeAll(completedResults); S3Object[] deletedObjects = (S3Object[]) completedResults .toArray(new S3Object[completedResults.size()]); fireServiceEvent(DeleteObjectsEvent.newInProgressEvent(threadWatcher, deletedObjects, uniqueOperationId)); } @Override
@Override public void fireErrorEvent(Throwable throwable) { success[0] = false; fireServiceEvent(DeleteObjectsEvent.newErrorEvent(throwable, uniqueOperationId)); } @Override
public static DeleteObjectsEvent newCompletedEvent(Object uniqueOperationId) { DeleteObjectsEvent event = new DeleteObjectsEvent(EVENT_COMPLETED, uniqueOperationId); return event; }
if (ServiceEvent.EVENT_STARTED == event.getEventCode()) { startProgressDialog( "Deleted 0 of " + event.getThreadWatcher().getThreadCount() + " objects", "", 0, (int) event.getThreadWatcher().getThreadCount(), "Cancel Delete Objects", event.getThreadWatcher().getCancelEventListener()); else if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { SwingUtilities.invokeLater(new Runnable() { public void run() { ThreadWatcher progressStatus = event.getThreadWatcher(); String statusText = "Deleted " + 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(DeleteObjectsEvent event) { super.s3ServiceEventPerformed(event); if (ServiceEvent.EVENT_IN_PROGRESS == event.getEventCode()) { objectList.addAll(Arrays.asList(event.getDeletedObjects())); } }; };
public static DeleteObjectsEvent newIgnoredErrorsEvent(ThreadWatcher threadWatcher, Throwable[] ignoredErrors, Object uniqueOperationId) { DeleteObjectsEvent event = new DeleteObjectsEvent(EVENT_IGNORED_ERRORS, uniqueOperationId); event.setIgnoredErrors(ignoredErrors); return event; }
public static DeleteObjectsEvent newErrorEvent(Throwable t, Object uniqueOperationId) { DeleteObjectsEvent event = new DeleteObjectsEvent(EVENT_ERROR, uniqueOperationId); event.setErrorCause(t); return event; }
public static DeleteObjectsEvent newStartedEvent(ThreadWatcher threadWatcher, Object uniqueOperationId) { DeleteObjectsEvent event = new DeleteObjectsEvent(EVENT_STARTED, uniqueOperationId); event.setThreadWatcher(threadWatcher); return event; }