From 46c08b8b1ee91298f42775073873e4ea49e33832 Mon Sep 17 00:00:00 2001 From: Jesse Morgan Date: Thu, 13 Dec 2012 21:01:30 -0800 Subject: Fixed various syntax errors. --- .../jesterpm/podcastuploader/config/Config.java | 4 ++++ .../control/PublishPodcastTask.java | 25 ++++++++++++++++++++ .../podcastuploader/control/S3UploadTask.java | 14 +++++++++-- .../podcastuploader/control/UploadTask.java | 27 ++++++++++++---------- .../podcastuploader/ui/ProgressInterface.java | 10 ++++---- .../podcastuploader/ui/ProgressWindow.java | 5 +++- 6 files changed, 66 insertions(+), 19 deletions(-) create mode 100644 src/net/jesterpm/podcastuploader/control/PublishPodcastTask.java diff --git a/src/net/jesterpm/podcastuploader/config/Config.java b/src/net/jesterpm/podcastuploader/config/Config.java index b3d6954..b9260e0 100644 --- a/src/net/jesterpm/podcastuploader/config/Config.java +++ b/src/net/jesterpm/podcastuploader/config/Config.java @@ -130,4 +130,8 @@ public class Config { public void put(final String key, final String obj) { mConfig.put(key, obj); } + + public Map getMap() { + return mConfig; + } } diff --git a/src/net/jesterpm/podcastuploader/control/PublishPodcastTask.java b/src/net/jesterpm/podcastuploader/control/PublishPodcastTask.java new file mode 100644 index 0000000..fdee900 --- /dev/null +++ b/src/net/jesterpm/podcastuploader/control/PublishPodcastTask.java @@ -0,0 +1,25 @@ +/* + * Copyright 2012 Jesse Morgan + */ + +package net.jesterpm.podcastuploader.control; + +import java.util.Map; + +import net.jesterpm.podcastuploader.config.Config; + +/** + * Task to publish podcast meta-data to a server. + * + * @author Jesse Morgan + */ +class PublishPodcastTask implements Runnable { + public PublishPodcastTask(final Config appConfig, final Map metadata) { + + } + + @Override + public void run() { + + } +} diff --git a/src/net/jesterpm/podcastuploader/control/S3UploadTask.java b/src/net/jesterpm/podcastuploader/control/S3UploadTask.java index b282c52..2d41426 100644 --- a/src/net/jesterpm/podcastuploader/control/S3UploadTask.java +++ b/src/net/jesterpm/podcastuploader/control/S3UploadTask.java @@ -4,6 +4,9 @@ package net.jesterpm.podcastuploader.control; +import com.amazonaws.auth.BasicAWSCredentials; +import com.amazonaws.services.s3.AmazonS3Client; + import java.util.concurrent.ThreadPoolExecutor; import net.jesterpm.podcastuploader.config.Config; @@ -13,7 +16,7 @@ import net.jesterpm.podcastuploader.config.Config; * * @author Jesse Morgan */ -public class S3UploadTask extends ObserableTask implements Runable { +public class S3UploadTask extends ObservableTask implements Runnable { private final ThreadPoolExecutor mExecutor; private final AmazonS3Client mClient; @@ -71,6 +74,13 @@ public class S3UploadTask extends ObserableTask implements Runable { */ @Override public float getProgress() { - return (float) mCurrentChunk / mTotalChunks. + return (float) mCurrentChunk / mTotalChunks; + } + + /** + * @return The S3 key this object uploads to. + */ + public String getS3Key() { + return mS3Key; } } diff --git a/src/net/jesterpm/podcastuploader/control/UploadTask.java b/src/net/jesterpm/podcastuploader/control/UploadTask.java index 5c0b5ce..a201a80 100644 --- a/src/net/jesterpm/podcastuploader/control/UploadTask.java +++ b/src/net/jesterpm/podcastuploader/control/UploadTask.java @@ -7,10 +7,13 @@ package net.jesterpm.podcastuploader.control; import java.text.DateFormat; import java.text.SimpleDateFormat; +import java.util.concurrent.ThreadPoolExecutor; import java.util.Date; +import java.util.HashMap; +import java.util.Map; import net.jesterpm.podcastuploader.config.Config; -import net.jesterpm.podcastuploader.ui.ProgressWindow; +import net.jesterpm.podcastuploader.ui.ProgressInterface; /** * @@ -88,7 +91,7 @@ public class UploadTask { // Build a list of files to upload. Map files = getFilesToUpload(baseFilename); - for (S3UploadTask task : files.getEntries()) { + for (S3UploadTask task : files.values()) { mExecutor.submit(task); mProgressInterface.monitorTask(task); } @@ -96,10 +99,10 @@ public class UploadTask { // Wait until all uploads complete. // Publish the podcast metadata. - Map metadata = mMetadata.getMap().clone(); + Map metadata = new HashMap(mMetadata.getMap()); - for (Map.Entry entry : files) { - metadata.put(entry.getKey(), entry.getValue().getRemoteFile()); + for (Map.Entry entry : files.entrySet()) { + metadata.put(entry.getKey(), entry.getValue().getS3Key()); } PublishPodcastTask task = new PublishPodcastTask(mAppConfig, metadata); @@ -119,35 +122,35 @@ public class UploadTask { if (localFile != null) { remoteFile = basename + "-video" + fileExtension(localFile); files.put("video", new S3UploadTask(mAppConfig, localFile, - remoteFile, mExecutor); + remoteFile, mExecutor)); } localFile = mMetadata.get("video_lowres"); if (localFile != null) { remoteFile = basename + "-videolow" + fileExtension(localFile); files.put("video_lowres", new S3UploadTask(mAppConfig, localFile, - remoteFile, mExecutor); + remoteFile, mExecutor)); } localFile = mMetadata.get("audio"); if (localFile != null) { remoteFile = basename + "-audio" + fileExtension(localFile); files.put("audio", new S3UploadTask(mAppConfig, localFile, - remoteFile, mExecutor); + remoteFile, mExecutor)); } localFile = mMetadata.get("image"); if (localFile != null) { remoteFile = basename + "-image" + fileExtension(localFile); - files.add("image", new S3UploadTask(mAppConfig, localFile, - remoteFile, mExecutor); + files.put("image", new S3UploadTask(mAppConfig, localFile, + remoteFile, mExecutor)); } localFile = mMetadata.get("mobileimage"); if (localFile != null) { remoteFile = basename + "-mobileimage" + fileExtension(localFile); - files.add("mobileimage", new S3UploadTask(mAppConfig, localFile, - remoteFile, mExecutor); + files.put("mobileimage", new S3UploadTask(mAppConfig, localFile, + remoteFile, mExecutor)); } return files; diff --git a/src/net/jesterpm/podcastuploader/ui/ProgressInterface.java b/src/net/jesterpm/podcastuploader/ui/ProgressInterface.java index 12aaabd..3e85667 100644 --- a/src/net/jesterpm/podcastuploader/ui/ProgressInterface.java +++ b/src/net/jesterpm/podcastuploader/ui/ProgressInterface.java @@ -7,8 +7,9 @@ package net.jesterpm.podcastuploader.ui; import java.util.HashMap; import java.util.Map; import java.util.Observer; +import java.util.Observable; -import net.jesterpm.podcastuploader.control.ObserableTask; +import net.jesterpm.podcastuploader.control.ObservableTask; /** * ProgressInterface is an abstract based class for any interface that @@ -34,7 +35,7 @@ public abstract class ProgressInterface implements Observer { */ public void monitorTask(final ObservableTask task) { task.addObserver(this); - mProgressMap.put(task, 0); + mProgressMap.put(task, 0f); setProgress(getProgress()); } @@ -53,7 +54,8 @@ public abstract class ProgressInterface implements Observer { */ @Override public void update(Observable task, Object arg) { - mProgressMap.put(task, task.getProgress()); + ObservableTask observableTask = (ObservableTask) task; + mProgressMap.put(observableTask, observableTask.getProgress()); setProgress(getProgress()); } @@ -67,7 +69,7 @@ public abstract class ProgressInterface implements Observer { } float totalProgress = 0; - for (float taskProgress : mProgressMap.getValues()) { + for (float taskProgress : mProgressMap.values()) { totalProgress += taskProgress; } diff --git a/src/net/jesterpm/podcastuploader/ui/ProgressWindow.java b/src/net/jesterpm/podcastuploader/ui/ProgressWindow.java index 6ac6f55..01daa83 100644 --- a/src/net/jesterpm/podcastuploader/ui/ProgressWindow.java +++ b/src/net/jesterpm/podcastuploader/ui/ProgressWindow.java @@ -9,5 +9,8 @@ package net.jesterpm.podcastuploader.ui; * @author Jesse Morgan */ public class ProgressWindow extends ProgressInterface { - + @Override + public void setProgress(float percentComplete) { + + } } -- cgit v1.2.3