Permalink
Browse files

This release introduces:

 - a new way to deploy Java web applications using AWS Elastic Beanstalk (http://aws.amazon.com/elasticbeanstalk)
 - an AWS Java web project wizard
 - and an AWS toolbar menu

Additionally, this release moves the AWS Toolkit for Eclipse source code from SourceForge to its new home on GitHub.
  • Loading branch information...
0 parents commit 36cf92c2b857ed0a9cf3b4e081e4c63ba291f72e amazonwebservices committed Jan 19, 2011
Showing with 19,560 additions and 0 deletions.
  1. +17 −0 com.amazonaws.eclipse.core.feature/.project
  2. +1 −0 com.amazonaws.eclipse.core.feature/build.properties
  3. +215 −0 com.amazonaws.eclipse.core.feature/feature.xml
  4. +7 −0 com.amazonaws.eclipse.core.tests/.classpath
  5. +28 −0 com.amazonaws.eclipse.core.tests/.project
  6. +12 −0 com.amazonaws.eclipse.core.tests/META-INF/MANIFEST.MF
  7. +6 −0 com.amazonaws.eclipse.core.tests/build.properties
  8. +102 −0 ...naws.eclipse.core.tests/src/com/amazonaws/eclipse/core/preferences/PreferenceInitializerTest.java
  9. +13 −0 com.amazonaws.eclipse.core/.classpath
  10. +28 −0 com.amazonaws.eclipse.core/.project
  11. +92 −0 com.amazonaws.eclipse.core/META-INF/MANIFEST.MF
  12. +22 −0 com.amazonaws.eclipse.core/build.properties
  13. BIN com.amazonaws.eclipse.core/icons/aws-box.gif
  14. BIN com.amazonaws.eclipse.core/icons/aws-toolkit-title.png
  15. BIN com.amazonaws.eclipse.core/icons/document_text.png
  16. BIN com.amazonaws.eclipse.core/icons/gear.png
  17. BIN com.amazonaws.eclipse.core/icons/gears.png
  18. BIN com.amazonaws.eclipse.core/icons/gradient-box/bottom.png
  19. BIN com.amazonaws.eclipse.core/icons/gradient-box/left.png
  20. BIN com.amazonaws.eclipse.core/icons/gradient-box/lower-left.png
  21. BIN com.amazonaws.eclipse.core/icons/gradient-box/lower-right.png
  22. BIN com.amazonaws.eclipse.core/icons/gradient-box/right.png
  23. BIN com.amazonaws.eclipse.core/icons/gradient-box/top.png
  24. BIN com.amazonaws.eclipse.core/icons/gradient-box/upper-left.png
  25. BIN com.amazonaws.eclipse.core/icons/gradient-box/upper-right.png
  26. BIN com.amazonaws.eclipse.core/icons/icon_offsite.gif
  27. BIN com.amazonaws.eclipse.core/icons/logo_aws.png
  28. BIN com.amazonaws.eclipse.core/icons/overview/bullet.png
  29. BIN com.amazonaws.eclipse.core/icons/overview/configure-button.png
  30. BIN com.amazonaws.eclipse.core/icons/overview/header-gradient.png
  31. BIN com.amazonaws.eclipse.core/icons/overview/logo-header-gradient.png
  32. BIN com.amazonaws.eclipse.core/icons/scroll.png
  33. BIN com.amazonaws.eclipse.core/icons/wrench.png
  34. BIN com.amazonaws.eclipse.core/lib/aws-java-sdk-1.1.1.jar
  35. BIN com.amazonaws.eclipse.core/lib/aws-java-sdk-1.1.2.jar
  36. +202 −0 com.amazonaws.eclipse.core/lib/commons-codec-1.3/LICENSE
  37. BIN com.amazonaws.eclipse.core/lib/commons-codec-1.3/commons-codec-1.3.jar
  38. BIN com.amazonaws.eclipse.core/lib/commons-httpclient-3.0.1.jar
  39. +203 −0 com.amazonaws.eclipse.core/lib/commons-io-1.4/LICENSE.txt
  40. BIN com.amazonaws.eclipse.core/lib/commons-io-1.4/commons-io-1.4.jar
  41. BIN com.amazonaws.eclipse.core/lib/commons-logging-1.1.jar
  42. BIN com.amazonaws.eclipse.core/lib/log4j-1.2.15.jar
  43. +118 −0 com.amazonaws.eclipse.core/plugin.xml
  44. +97 −0 com.amazonaws.eclipse.core/schema/overview.exsd
  45. +260 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AWSClientFactory.java
  46. +107 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AccountInfo.java
  47. +27 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AccountInfoChangeListener.java
  48. +71 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AccountInfoMonitor.java
  49. +66 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AwsClientUtils.java
  50. +190 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AwsToolkitCore.java
  51. +33 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AwsUrls.java
  52. +45 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/BrowserUtils.java
  53. +96 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/PluginPreferenceStoreAccountInfo.java
  54. +52 −0 ...lipse.core/src/com/amazonaws/eclipse/core/preferences/AccountPreferenceChangeRefreshListener.java
  55. +98 −0 ...naws.eclipse.core/src/com/amazonaws/eclipse/core/preferences/PreferenceChangeRefreshListener.java
  56. +43 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/preferences/PreferenceConstants.java
  57. +110 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/preferences/PreferenceInitializer.java
  58. +34 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/DisplayAwsOverviewEditorCmdHandler.java
  59. +29 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/IRefreshable.java
  60. +57 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/PreferenceLinkListener.java
  61. +252 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/Startup.java
  62. +78 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/WebLinkListener.java
  63. +34 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/menu/OpenPreferencesHandler.java
  64. +30 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/menu/OpenWebConsoleHandler.java
  65. +324 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/FormsOverviewComposite.java
  66. +122 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/GettingStartedSection.java
  67. +194 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/GradientBoxComposite.java
  68. +66 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/HeaderComposite.java
  69. +77 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/HyperlinkHandler.java
  70. +44 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/LayoutUtils.java
  71. +72 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/OverviewEditor.java
  72. +216 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/OverviewResources.java
  73. +62 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/OverviewSection.java
  74. +397 −0 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/overview/Toolkit.java
  75. +286 −0 ...mazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/preferences/AwsAccountPreferencePage.java
  76. +184 −0 ...mazonaws.eclipse.core/src/com/amazonaws/eclipse/core/ui/preferences/AwsToolkitPreferencePage.java
  77. +87 −0 ...naws.eclipse.core/src/com/amazonaws/eclipse/core/ui/preferences/ObfuscatingStringFieldEditor.java
  78. +22 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.dbdefinition/.project
  79. +182 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.dbdefinition/LICENSE.txt
  80. +10 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.dbdefinition/META-INF/MANIFEST.MF
  81. +5 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.dbdefinition/NOTICE.txt
  82. +25 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.dbdefinition/build.properties
  83. +21 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.dbdefinition/plugin.properties
  84. +15 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.dbdefinition/plugin.xml
  85. +112 −0 ....eclipse.datatools.enablement.simpledb.dbdefinition/runtime/vendors/SimpleDB_1.0/SimpleDB_1.0.xmi
  86. +11 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.driver/.classpath
  87. +28 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.driver/.project
  88. +7 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.driver/.settings/org.eclipse.jdt.core.prefs
  89. +54 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.driver/.settings/org.eclipse.jdt.ui.prefs
  90. +182 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.driver/LICENSE.txt
  91. +5 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.driver/NOTICE.txt
  92. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.driver/aws-java-sdk/lib/aws-java-sdk-1.0.003.jar
  93. +177 −0 ...e.datatools.enablement.simpledb.driver/aws-java-sdk/lib/third-party/commons-codec-1.3/LICENSE.txt
  94. BIN ...s.enablement.simpledb.driver/aws-java-sdk/lib/third-party/commons-codec-1.3/commons-codec-1.3.jar
  95. +176 −0 ...ools.enablement.simpledb.driver/aws-java-sdk/lib/third-party/commons-httpclient-3.0.1/LICENSE.txt
  96. BIN ...impledb.driver/aws-java-sdk/lib/third-party/commons-httpclient-3.0.1/commons-httpclient-3.0.1.jar
  97. +202 −0 ...tatools.enablement.simpledb.driver/aws-java-sdk/lib/third-party/commons-logging-1.1.1/LICENSE.txt
  98. +6 −0 ...atatools.enablement.simpledb.driver/aws-java-sdk/lib/third-party/commons-logging-1.1.1/NOTICE.txt
  99. BIN ...ment.simpledb.driver/aws-java-sdk/lib/third-party/commons-logging-1.1.1/commons-logging-1.1.1.jar
  100. +15 −0 ...ipse.datatools.enablement.simpledb.driver/aws-java-sdk/lib/third-party/saxonhe-9.0.2j/LICENSE.txt
  101. BIN ...pse.datatools.enablement.simpledb.driver/aws-java-sdk/lib/third-party/saxonhe-9.0.2j/saxon9he.jar
  102. +17 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.driver/build.properties
  103. +17 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.driver/plugin.properties
  104. +39 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.driver/plugin.xml
  105. +11 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/.classpath
  106. +28 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/.project
  107. +12 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/.settings/org.eclipse.jdt.core.prefs
  108. +55 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/.settings/org.eclipse.jdt.ui.prefs
  109. +182 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/LICENSE.txt
  110. +17 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/META-INF/MANIFEST.MF
  111. +5 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/NOTICE.txt
  112. +8 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/build.properties
  113. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/lib/hamcrest-core-1.1.jar
  114. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/lib/hamcrest-library-1.1.jar
  115. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/lib/jmock-2.4.0.jar
  116. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.editor.test/lib/jmock-junit3-2.4.0.jar
  117. +32 −0 ...simpledb.editor.test/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/AllTests.java
  118. +23 −0 ...edb.editor.test/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/ColumnForMock.java
  119. +118 −0 ...mpledb.editor.test/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/EditorTest.java
  120. +52 −0 ...itor.test/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/SDBDataAccessorTest.java
  121. +23 −0 ...ledb.editor.test/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/TableForMock.java
  122. +7 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/.classpath
  123. +28 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/.project
  124. +12 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/.settings/org.eclipse.jdt.core.prefs
  125. +55 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/.settings/org.eclipse.jdt.ui.prefs
  126. +182 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/LICENSE.txt
  127. +15 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/META-INF/MANIFEST.MF
  128. +5 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/NOTICE.txt
  129. +6 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/build.properties
  130. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/icons/sdb-wizard-75x66-shadow.png
  131. +31 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.editor.ui/plugin.xml
  132. +77 −0 ....simpledb.editor.ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/Activator.java
  133. +53 −0 ...t.simpledb.editor.ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/Messages.java
  134. +88 −0 ...pledb.editor.ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/SDBTextEditor.java
  135. +152 −0 ...ditor.ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/SimpleDBDataAccessor.java
  136. +50 −0 ...tor.ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/SimpleDBIDDataAccessor.java
  137. +26 −0 ...ledb.editor.ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/messages.properties
  138. +57 −0 ....ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/wizard/SDBTableDataWizard.java
  139. +343 −0 ...src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/wizard/SDBTableDataWizardPage.java
  140. +57 −0 ...i/src/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/wizard/SDBTableIdDataWizard.java
  141. +173 −0 ...c/com/amazonaws/eclipse/datatools/enablement/simpledb/editor/wizard/SDBTableIdDataWizardPage.java
  142. +22 −0 ...mpledb.editor.ui/src/org/eclipse/datatools/sqltools/data/internal/ui/editor/ITableDataEditor.java
  143. +17 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.feature/.project
  144. +1 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.feature/build.properties
  145. +274 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.feature/feature.xml
  146. +12 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.test/.classpath
  147. +28 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.test/.project
  148. +12 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.test/.settings/org.eclipse.jdt.core.prefs
  149. +55 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.test/.settings/org.eclipse.jdt.ui.prefs
  150. +182 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.test/LICENSE.txt
  151. +15 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.test/META-INF/MANIFEST.MF
  152. +5 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.test/NOTICE.txt
  153. +11 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.test/build.properties
  154. BIN ...mazonaws.eclipse.datatools.enablement.simpledb.test/lib/aws-java-sdk/lib/aws-java-sdk-1.0.000.jar
  155. BIN ...eclipse.datatools.enablement.simpledb.test/lib/aws-java-sdk/lib/third-party/commons-codec-1.3.jar
  156. BIN ....datatools.enablement.simpledb.test/lib/aws-java-sdk/lib/third-party/commons-httpclient-3.0.1.jar
  157. BIN ...lipse.datatools.enablement.simpledb.test/lib/aws-java-sdk/lib/third-party/commons-logging-1.1.jar
  158. BIN ...mazonaws.eclipse.datatools.enablement.simpledb.test/lib/aws-java-sdk/lib/third-party/saxon9he.jar
  159. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.test/lib/hamcrest-core-1.1.jar
  160. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.test/lib/hamcrest-library-1.1.jar
  161. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.test/lib/jmock-2.4.0.jar
  162. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.test/lib/jmock-junit3-2.4.0.jar
  163. +33 −0 ...ls.enablement.simpledb.test/src/com/amazonaws/eclipse/datatools/enablement/simpledb/AllTests.java
  164. +145 −0 ...st/src/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/driver/JdbcStatementTest.java
  165. +7 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/.classpath
  166. +28 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/.project
  167. +12 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/.settings/org.eclipse.jdt.core.prefs
  168. +54 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/.settings/org.eclipse.jdt.ui.prefs
  169. +182 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/LICENSE.txt
  170. +22 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/META-INF/MANIFEST.MF
  171. +5 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/NOTICE.txt
  172. +15 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/build.properties
  173. BIN com.amazonaws.eclipse.datatools.enablement.simpledb.ui/icons/new_db_element.gif
  174. +27 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/plugin.properties
  175. +146 −0 com.amazonaws.eclipse.datatools.enablement.simpledb.ui/plugin.xml
  176. +45 −0 ...ent.simpledb.ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/ui/Messages.java
  177. +79 −0 .../src/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/ui/SimpleDBOverviewSection.java
  178. +25 −0 ...ipse/datatools/enablement/simpledb/internal/ui/connection/NewSimpleDBConnectionProfileWizard.java
  179. +26 −0 ...clipse/datatools/enablement/simpledb/internal/ui/connection/SimpleDBProfileDetailsWizardPage.java
  180. +26 −0 ...aws/eclipse/datatools/enablement/simpledb/internal/ui/connection/SimpleDBProfilePropertyPage.java
  181. +444 −0 ...pse/datatools/enablement/simpledb/internal/ui/connection/drivers/SimpleDBDriverUIContributor.java
  182. +21 −0 ...atatools/enablement/simpledb/internal/ui/connection/drivers/SimpleDBOtherDriverUIContributor.java
  183. +111 −0 .../eclipse/datatools/enablement/simpledb/internal/ui/explorer/SimpleDBContentProviderExtension.java
  184. +47 −0 ...ws/eclipse/datatools/enablement/simpledb/internal/ui/explorer/SimpleDBLabelProviderExtension.java
  185. +47 −0 ...mazonaws/eclipse/datatools/enablement/simpledb/internal/ui/menu/NewSimpleDBConnectionHandler.java
  186. +24 −0 ...om/amazonaws/eclipse/datatools/enablement/simpledb/internal/ui/menu/OpenSyntaxHelpUrlHandler.java
  187. +50 −0 ...b.ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/ui/menu/OpenUrlHandler.java
  188. +35 −0 ...mpledb.ui/src/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/ui/messages.properties
  189. +7 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/.classpath
  190. +28 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/.project
  191. +12 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/.settings/org.eclipse.jdt.core.prefs
  192. +55 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/.settings/org.eclipse.jdt.ui.prefs
  193. +182 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/LICENSE.txt
  194. +23 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/META-INF/MANIFEST.MF
  195. +5 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/NOTICE.txt
  196. +18 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/build.properties
  197. BIN com.amazonaws.eclipse.datatools.enablement.simpledb/icons/jdbc_16.gif
  198. +30 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/plugin.properties
  199. +114 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/plugin.xml
  200. +9 −0 com.amazonaws.eclipse.datatools.enablement.simpledb/properties/connection.properties
  201. +78 −0 ...atools.enablement.simpledb/src/com/amazonaws/eclipse/datatools/enablement/simpledb/Activator.java
  202. +28 −0 ...azonaws/eclipse/datatools/enablement/simpledb/connection/ISimpleDBConnectionProfileConstants.java
  203. +159 −0 ...b/src/com/amazonaws/eclipse/datatools/enablement/simpledb/connection/SimpleDBConnectionUtils.java
  204. +408 −0 ...ement.simpledb/src/com/amazonaws/eclipse/datatools/enablement/simpledb/driver/JdbcConnection.java
  205. +180 −0 ...nablement.simpledb/src/com/amazonaws/eclipse/datatools/enablement/simpledb/driver/JdbcDriver.java
  206. +78 −0 ...ent.simpledb/src/com/amazonaws/eclipse/datatools/enablement/simpledb/driver/SimpleDBItemName.java
  207. +160 −0 ...c/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/connection/SimpleDBConnection.java
  208. +50 −0 ...mazonaws/eclipse/datatools/enablement/simpledb/internal/connection/SimpleDBConnectionFactory.java
  209. +51 −0 ...azonaws/eclipse/datatools/enablement/simpledb/internal/connection/SimpleDBDatabaseRecognizer.java
  210. +46 −0 .../eclipse/datatools/enablement/simpledb/internal/connection/SimpleDBPropertiesPersistenceHook.java
  211. +1,009 −0 ...src/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/driver/JdbcDatabaseMetaData.java
  212. +382 −0 ...rc/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/driver/JdbcPreparedStatement.java
  213. +1,136 −0 ...mpledb/src/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/driver/JdbcResultSet.java
  214. +1,212 −0 ...mpledb/src/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/driver/JdbcStatement.java
  215. +112 −0 .../com/amazonaws/eclipse/datatools/enablement/simpledb/internal/driver/ListAttributesStatement.java
  216. +112 −0 ...src/com/amazonaws/eclipse/datatools/enablement/simpledb/internal/driver/ListDomainsStatement.java
  217. +89 −0 ...amazonaws/eclipse/datatools/enablement/simpledb/internal/driver/SimpleDBDriverValuesProvider.java
  218. +7 −0 com.amazonaws.eclipse.datatools.sqltools.db.simpledb/.classpath
  219. +28 −0 com.amazonaws.eclipse.datatools.sqltools.db.simpledb/.project
  220. +8 −0 com.amazonaws.eclipse.datatools.sqltools.db.simpledb/.settings/org.eclipse.jdt.core.prefs
  221. +54 −0 com.amazonaws.eclipse.datatools.sqltools.db.simpledb/.settings/org.eclipse.jdt.ui.prefs
  222. +182 −0 com.amazonaws.eclipse.datatools.sqltools.db.simpledb/LICENSE.txt
  223. +16 −0 com.amazonaws.eclipse.datatools.sqltools.db.simpledb/META-INF/MANIFEST.MF
  224. +5 −0 com.amazonaws.eclipse.datatools.sqltools.db.simpledb/NOTICE.txt
  225. +5 −0 com.amazonaws.eclipse.datatools.sqltools.db.simpledb/build.properties
  226. +15 −0 com.amazonaws.eclipse.datatools.sqltools.db.simpledb/plugin.xml
  227. +65 −0 ...ools.sqltools.db.simpledb/src/com/amazonaws/eclipse/datatools/sqltools/db/simpledb/Activator.java
  228. +33 −0 ...tools.sqltools.db.simpledb/src/com/amazonaws/eclipse/datatools/sqltools/db/simpledb/Messages.java
  229. +60 −0 ...s.db.simpledb/src/com/amazonaws/eclipse/datatools/sqltools/db/simpledb/SimpleDBConfiguration.java
  230. +66 −0 ...qltools.db.simpledb/src/com/amazonaws/eclipse/datatools/sqltools/db/simpledb/SimpleDBService.java
  231. +20 −0 ...sqltools.db.simpledb/src/com/amazonaws/eclipse/datatools/sqltools/db/simpledb/messages.properties
  232. +12 −0 com.amazonaws.eclipse.datatools.sqltools.tablewizard.simpledb/.classpath
  233. +28 −0 com.amazonaws.eclipse.datatools.sqltools.tablewizard.simpledb/.project
  234. +54 −0 com.amazonaws.eclipse.datatools.sqltools.tablewizard.simpledb/.settings/org.eclipse.jdt.ui.prefs
  235. +182 −0 com.amazonaws.eclipse.datatools.sqltools.tablewizard.simpledb/LICENSE.txt
  236. +21 −0 com.amazonaws.eclipse.datatools.sqltools.tablewizard.simpledb/META-INF/MANIFEST.MF
  237. +5 −0 com.amazonaws.eclipse.datatools.sqltools.tablewizard.simpledb/NOTICE.txt
  238. +13 −0 com.amazonaws.eclipse.datatools.sqltools.tablewizard.simpledb/build.properties
  239. +19 −0 com.amazonaws.eclipse.datatools.sqltools.tablewizard.simpledb/plugin.properties
  240. +221 −0 com.amazonaws.eclipse.datatools.sqltools.tablewizard.simpledb/plugin.xml
  241. +69 −0 ...izard.simpledb/src/com/amazonaws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/Messages.java
  242. +79 −0 ...izard.simpledb/src/com/amazonaws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/UIPlugin.java
  243. +28 −0 ...simpledb/src/com/amazonaws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/messages.properties
  244. +78 −0 ...eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/AbstractEditorClosingAction.java
  245. +37 −0 ...lipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/DeleteAttributeActionProvider.java
  246. +142 −0 ...eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/DeleteAttributeWizardAction.java
  247. +37 −0 .../eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/DeleteDomainActionProvider.java
  248. +152 −0 ...ws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/DeleteDomainWizardAction.java
  249. +75 −0 ...naws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/ExportDBUDataSetAction.java
  250. +52 −0 ...onaws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/ForwardEngineerAction.java
  251. +52 −0 ...lipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/ForwardEngineerActionProvider.java
  252. +52 −0 ...om/amazonaws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/LoadDataAction.java
  253. +44 −0 ...naws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/LoadDataActionProvider.java
  254. +38 −0 .../eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/NewAttributeActionProvider.java
  255. +212 −0 ...ws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/NewAttributeWizardAction.java
  256. +38 −0 ...aws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/NewDomainActionProvider.java
  257. +172 −0 ...onaws/eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/actions/NewDomainWizardAction.java
  258. +66 −0 ...s/eclipse/datatools/sqltools/tablewizard/simpledb/ui/popup/expressions/SQLNodePropertyTester.java
  259. +17 −0 com.amazonaws.eclipse.datatools.test/.project
  260. +1 −0 com.amazonaws.eclipse.datatools.test/build.properties
  261. +48 −0 com.amazonaws.eclipse.datatools.test/feature.xml
  262. +17 −0 com.amazonaws.eclipse.ec2.feature/.project
  263. +1 −0 com.amazonaws.eclipse.ec2.feature/build.properties
  264. +226 −0 com.amazonaws.eclipse.ec2.feature/feature.xml
  265. +15 −0 com.amazonaws.eclipse.ec2/.classpath
  266. +28 −0 com.amazonaws.eclipse.ec2/.project
  267. +182 −0 com.amazonaws.eclipse.ec2/LICENSE
  268. +45 −0 com.amazonaws.eclipse.ec2/META-INF/MANIFEST.MF
  269. +5 −0 com.amazonaws.eclipse.ec2/NOTICE
  270. +42 −0 com.amazonaws.eclipse.ec2/build.properties
  271. +11 −0 com.amazonaws.eclipse.ec2/helpContexts.xml
  272. BIN com.amazonaws.eclipse.ec2/icons/add.gif
  273. BIN com.amazonaws.eclipse.ec2/icons/add.png
  274. BIN com.amazonaws.eclipse.ec2/icons/add2.png
  275. BIN com.amazonaws.eclipse.ec2/icons/ami_icon.png
  276. BIN com.amazonaws.eclipse.ec2/icons/aws-box.gif
  277. BIN com.amazonaws.eclipse.ec2/icons/blue-circle.gif
  278. BIN com.amazonaws.eclipse.ec2/icons/blue-circle.png
  279. BIN com.amazonaws.eclipse.ec2/icons/box.png
  280. BIN com.amazonaws.eclipse.ec2/icons/bundle.gif
  281. BIN com.amazonaws.eclipse.ec2/icons/camera.png
  282. BIN com.amazonaws.eclipse.ec2/icons/certificate_ok.png
  283. BIN com.amazonaws.eclipse.ec2/icons/check.png
  284. BIN com.amazonaws.eclipse.ec2/icons/check2.png
  285. BIN com.amazonaws.eclipse.ec2/icons/client_network.png
  286. BIN com.amazonaws.eclipse.ec2/icons/clients.png
  287. BIN com.amazonaws.eclipse.ec2/icons/clipboard.gif
  288. BIN com.amazonaws.eclipse.ec2/icons/clipboard.png
  289. BIN com.amazonaws.eclipse.ec2/icons/cluster.gif
  290. BIN com.amazonaws.eclipse.ec2/icons/console.png
  291. BIN com.amazonaws.eclipse.ec2/icons/delete.png
  292. BIN com.amazonaws.eclipse.ec2/icons/delete2.png
  293. BIN com.amazonaws.eclipse.ec2/icons/diskdrive.png
  294. BIN com.amazonaws.eclipse.ec2/icons/error.png
  295. BIN com.amazonaws.eclipse.ec2/icons/filter.gif
  296. BIN com.amazonaws.eclipse.ec2/icons/gear_add.png
  297. BIN com.amazonaws.eclipse.ec2/icons/gears.png
  298. BIN com.amazonaws.eclipse.ec2/icons/green-circle.gif
  299. BIN com.amazonaws.eclipse.ec2/icons/green-circle.png
  300. BIN com.amazonaws.eclipse.ec2/icons/harddisk.png
Sorry, we could not display the entire diff because too many files (765) changed.
17 com.amazonaws.eclipse.core.feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>com.amazonaws.eclipse.core.feature</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.FeatureBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.FeatureNature</nature>
+ </natures>
+</projectDescription>
1 com.amazonaws.eclipse.core.feature/build.properties
@@ -0,0 +1 @@
+bin.includes = feature.xml
215 com.amazonaws.eclipse.core.feature/feature.xml
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="com.amazonaws.eclipse.core.feature"
+ label="AWS Toolkit for Eclipse Core"
+ version="1.0.5.qualifier"
+ provider-name="Amazon Web Services">
+
+ <description url="http://aws.amazon.com/eclipse">
+ AWS Toolkit for Eclipse Core
+ </description>
+
+ <copyright>
+ AWS Toolkit for Eclipse
+Copyright 2008-2009 Amazon Technologies, Inc
+
+This product includes software developed by
+Amazon Technologies, Inc (http://www.amazon.com/).
+ </copyright>
+
+ <license url="http://aws.amazon.com/apache2.0">
+ Apache License
+Version 2.0, January 2004
+http://aws.amazon.com/apache2.0
+
+TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ &quot;License&quot; shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ &quot;Licensor&quot; shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ &quot;Legal Entity&quot; shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ &quot;control&quot; means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ &quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ &quot;Source&quot; form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ &quot;Object&quot; form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ &quot;Work&quot; shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ &quot;Derivative Works&quot; shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ &quot;Contribution&quot; shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, &quot;submitted&quot;
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as &quot;Not a Contribution.&quot;
+
+ &quot;Contributor&quot; shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a &quot;NOTICE&quot; text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+ </license>
+
+ <requires>
+ <import plugin="org.eclipse.swt"/>
+ <import plugin="org.eclipse.jface"/>
+ <import plugin="org.eclipse.ui"/>
+ <import plugin="org.eclipse.core.runtime"/>
+ <import plugin="org.eclipse.core.net"/>
+ <import plugin="org.eclipse.help" version="3.3.0" match="greaterOrEqual"/>
+ <import plugin="org.eclipse.ui.forms"/>
+ </requires>
+
+ <plugin
+ id="com.amazonaws.eclipse.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"/>
+
+</feature>
7 com.amazonaws.eclipse.core.tests/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
28 com.amazonaws.eclipse.core.tests/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>com.amazonaws.eclipse.core.tests</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
12 com.amazonaws.eclipse.core.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,12 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: AWS Toolkit Core Tests
+Bundle-SymbolicName: com.amazonaws.eclipse.core.tests
+Bundle-Version: 1.0.0
+Bundle-Vendor: AMAZONAWS
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: com.amazonaws.eclipse.core;bundle-version="1.0.0",
+ org.eclipse.core.runtime;bundle-version="3.4.0",
+ org.eclipse.jface;bundle-version="3.4.0",
+ org.eclipse.ui;bundle-version="3.4.0",
+ org.junit4;bundle-version="4.3.1"
6 com.amazonaws.eclipse.core.tests/build.properties
@@ -0,0 +1,6 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
+src.includes = src/,\
+ META-INF/
102 ...ipse.core.tests/src/com/amazonaws/eclipse/core/preferences/PreferenceInitializerTest.java
@@ -0,0 +1,102 @@
+/*
+ * Copyright 2009-2011 Amazon Technologies, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
+ * OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.amazonaws.eclipse.core.preferences;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.jface.preference.PreferenceStore;
+import org.junit.Test;
+
+/**
+ * Unit tests for the preference initializer to verify that it correctly imports
+ * any pre-existing preferences from the EC2 plugin.
+ *
+ * @author Jason Fulghum <fulghum@amazon.com>
+ */
+public class PreferenceInitializerTest {
+
+ /**
+ * If the EC2 plugin preferences haven't been imported yet, we expect them
+ * to be pulled from the EC2 plugin preference store and imported into the
+ * AWS Toolkit Core preference store.
+ */
+ @Test
+ public void testImportPreferences() {
+ MockPreferenceInitializer preferenceInitializer = new MockPreferenceInitializer();
+ IPreferenceStore preferenceStore = preferenceInitializer.getAwsToolkitCorePreferenceStore();
+
+ assertEquals("", preferenceStore.getString(PreferenceConstants.P_ACCESS_KEY));
+ assertFalse(preferenceStore.getBoolean(PreferenceConstants.P_EC2_PREFERENCES_IMPORTED));
+
+ preferenceInitializer.initializeDefaultPreferences();
+
+ assertEquals("accessKey", preferenceStore.getString(PreferenceConstants.P_ACCESS_KEY));
+ assertEquals("secretKey", preferenceStore.getString(PreferenceConstants.P_SECRET_KEY));
+ assertEquals("userId", preferenceStore.getString(PreferenceConstants.P_USER_ID));
+ assertEquals("certFile", preferenceStore.getString(PreferenceConstants.P_CERTIFICATE_FILE));
+ assertEquals("privateKey", preferenceStore.getString(PreferenceConstants.P_PRIVATE_KEY_FILE));
+ assertTrue(preferenceStore.getBoolean(PreferenceConstants.P_EC2_PREFERENCES_IMPORTED));
+ }
+
+ /**
+ * If the EC2 plugin preferences have already been imported, we expect them
+ * to not be imported again.
+ */
+ @Test
+ public void testOnlyImportOnce() {
+ MockPreferenceInitializer preferenceInitializer = new MockPreferenceInitializer();
+ IPreferenceStore preferenceStore = preferenceInitializer.getAwsToolkitCorePreferenceStore();
+
+ preferenceStore.setValue(PreferenceConstants.P_EC2_PREFERENCES_IMPORTED, true);
+ assertEquals("", preferenceStore.getString(PreferenceConstants.P_ACCESS_KEY));
+
+ preferenceInitializer.initializeDefaultPreferences();
+ assertEquals("", preferenceStore.getString(PreferenceConstants.P_ACCESS_KEY));
+ }
+
+
+ /**
+ * Subclass of AWS Toolkit Core's preference initializer that stubs out real
+ * EC2 and AWS Toolkit Core preference stores for easy testing.
+ */
+ private static class MockPreferenceInitializer extends PreferenceInitializer {
+
+ private IPreferenceStore awsToolkitCorePreferenceStore = new PreferenceStore();
+ private IPreferenceStore ec2PreferenceStore = new PreferenceStore();
+
+ MockPreferenceInitializer() {
+ ec2PreferenceStore.setValue(PreferenceConstants.P_ACCESS_KEY, "accessKey");
+ ec2PreferenceStore.setValue(PreferenceConstants.P_SECRET_KEY, "secretKey");
+ ec2PreferenceStore.setValue(PreferenceConstants.P_USER_ID, "userId");
+ ec2PreferenceStore.setValue(PreferenceConstants.P_CERTIFICATE_FILE, "certFile");
+ ec2PreferenceStore.setValue(PreferenceConstants.P_PRIVATE_KEY_FILE, "privateKey");
+ }
+
+ @Override
+ protected IPreferenceStore getEc2PluginPreferenceStore() {
+ return ec2PreferenceStore;
+ }
+
+ @Override
+ protected IPreferenceStore getAwsToolkitCorePreferenceStore() {
+ return awsToolkitCorePreferenceStore;
+ }
+
+ }
+
+}
13 com.amazonaws.eclipse.core/.classpath
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry exported="true" kind="lib" path="lib/commons-httpclient-3.0.1.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/commons-logging-1.1.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/commons-io-1.4/commons-io-1.4.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/commons-codec-1.3/commons-codec-1.3.jar"/>
+ <classpathentry kind="lib" path="lib/log4j-1.2.15.jar"/>
+ <classpathentry kind="lib" path="lib/aws-java-sdk-1.1.2.jar"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
28 com.amazonaws.eclipse.core/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>com.amazonaws.eclipse.core</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
92 com.amazonaws.eclipse.core/META-INF/MANIFEST.MF
@@ -0,0 +1,92 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: AWS Toolkit Core
+Bundle-SymbolicName: com.amazonaws.eclipse.core;singleton:=true
+Bundle-Version: 1.0.5.qualifier
+Bundle-Vendor: Amazon Web Services
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: com.amazonaws,
+ com.amazonaws.auth,
+ com.amazonaws.auth.policy,
+ com.amazonaws.auth.policy.actions,
+ com.amazonaws.auth.policy.conditions,
+ com.amazonaws.auth.policy.internal,
+ com.amazonaws.auth.policy.resources,
+ com.amazonaws.eclipse.core,
+ com.amazonaws.eclipse.core.preferences,
+ com.amazonaws.eclipse.core.ui,
+ com.amazonaws.eclipse.core.ui.menu,
+ com.amazonaws.eclipse.core.ui.overview,
+ com.amazonaws.eclipse.core.ui.preferences,
+ com.amazonaws.handlers,
+ com.amazonaws.http,
+ com.amazonaws.services.autoscaling,
+ com.amazonaws.services.autoscaling.model,
+ com.amazonaws.services.autoscaling.model.transform,
+ com.amazonaws.services.cloudwatch,
+ com.amazonaws.services.cloudwatch.model,
+ com.amazonaws.services.cloudwatch.model.transform,
+ com.amazonaws.services.ec2,
+ com.amazonaws.services.ec2.model,
+ com.amazonaws.services.ec2.model.transform,
+ com.amazonaws.services.ec2.util,
+ com.amazonaws.services.elasticbeanstalk,
+ com.amazonaws.services.elasticbeanstalk.model,
+ com.amazonaws.services.elasticbeanstalk.model.transform,
+ com.amazonaws.services.elasticloadbalancing,
+ com.amazonaws.services.elasticloadbalancing.model,
+ com.amazonaws.services.elasticloadbalancing.model.transform,
+ com.amazonaws.services.elasticmapreduce,
+ com.amazonaws.services.elasticmapreduce.model,
+ com.amazonaws.services.elasticmapreduce.model.transform,
+ com.amazonaws.services.elasticmapreduce.util,
+ com.amazonaws.services.identitymanagement,
+ com.amazonaws.services.identitymanagement.model,
+ com.amazonaws.services.identitymanagement.model.transform,
+ com.amazonaws.services.importexport,
+ com.amazonaws.services.importexport.model,
+ com.amazonaws.services.importexport.model.transform,
+ com.amazonaws.services.rds,
+ com.amazonaws.services.rds.model,
+ com.amazonaws.services.rds.model.transform,
+ com.amazonaws.services.s3,
+ com.amazonaws.services.s3.internal,
+ com.amazonaws.services.s3.internal.crypto,
+ com.amazonaws.services.s3.model,
+ com.amazonaws.services.s3.model.transform,
+ com.amazonaws.services.s3.transfer,
+ com.amazonaws.services.s3.transfer.internal,
+ com.amazonaws.services.s3.transfer.model,
+ com.amazonaws.services.simpledb,
+ com.amazonaws.services.simpledb.internal,
+ com.amazonaws.services.simpledb.model,
+ com.amazonaws.services.simpledb.model.transform,
+ com.amazonaws.services.simpledb.util,
+ com.amazonaws.services.sns,
+ com.amazonaws.services.sns.model,
+ com.amazonaws.services.sns.model.transform,
+ com.amazonaws.services.sns.util,
+ com.amazonaws.services.sqs,
+ com.amazonaws.services.sqs.model,
+ com.amazonaws.services.sqs.model.transform,
+ com.amazonaws.transform,
+ com.amazonaws.util,
+ com.amazonaws.util.json,
+ org.apache.commons.codec.binary,
+ org.apache.commons.io
+Require-Bundle: org.eclipse.swt,
+ org.eclipse.jface,
+ org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.core.net,
+ org.eclipse.help;bundle-version="3.3.0",
+ org.eclipse.ui.forms;bundle-version="3.3.0"
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: com.amazonaws.eclipse.core.AwsToolkitCore
+Bundle-ClassPath: .,
+ lib/aws-java-sdk-1.1.2.jar,
+ lib/commons-codec-1.3/commons-codec-1.3.jar,
+ lib/commons-io-1.4/commons-io-1.4.jar,
+ lib/log4j-1.2.15.jar,
+ lib/commons-logging-1.1.jar,
+ lib/commons-httpclient-3.0.1.jar
22 com.amazonaws.eclipse.core/build.properties
@@ -0,0 +1,22 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ lib/,\
+ icons/,\
+ toc.xml,\
+ html/,\
+ lib/commons-io-1.4/commons-io-1.4.jar,\
+ lib/log4j-1.2.15.jar,\
+ lib/commons-logging-1.1.jar,\
+ lib/commons-httpclient-3.0.1.jar,\
+ lib/aws-java-sdk-1.1.2.jar
+src.includes = src/,\
+ plugin.xml,\
+ META-INF/,\
+ lib/,\
+ .project,\
+ .classpath,\
+ schema/,\
+ icons/
BIN com.amazonaws.eclipse.core/icons/aws-box.gif
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/aws-toolkit-title.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/document_text.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gear.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gears.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gradient-box/bottom.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gradient-box/left.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gradient-box/lower-left.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gradient-box/lower-right.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gradient-box/right.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gradient-box/top.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gradient-box/upper-left.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/gradient-box/upper-right.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/icon_offsite.gif
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/logo_aws.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/overview/bullet.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/overview/configure-button.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/overview/header-gradient.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/overview/logo-header-gradient.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/scroll.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/icons/wrench.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN com.amazonaws.eclipse.core/lib/aws-java-sdk-1.1.1.jar
Binary file not shown.
BIN com.amazonaws.eclipse.core/lib/aws-java-sdk-1.1.2.jar
Binary file not shown.
202 com.amazonaws.eclipse.core/lib/commons-codec-1.3/LICENSE
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
BIN com.amazonaws.eclipse.core/lib/commons-codec-1.3/commons-codec-1.3.jar
Binary file not shown.
BIN com.amazonaws.eclipse.core/lib/commons-httpclient-3.0.1.jar
Binary file not shown.
203 com.amazonaws.eclipse.core/lib/commons-io-1.4/LICENSE.txt
@@ -0,0 +1,203 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
BIN com.amazonaws.eclipse.core/lib/commons-io-1.4/commons-io-1.4.jar
Binary file not shown.
BIN com.amazonaws.eclipse.core/lib/commons-logging-1.1.jar
Binary file not shown.
BIN com.amazonaws.eclipse.core/lib/log4j-1.2.15.jar
Binary file not shown.
118 com.amazonaws.eclipse.core/plugin.xml
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+ <extension-point id="overview" name="AWS Toolkit Overview" schema="schema/overview.exsd"/>
+
+ <extension point="org.eclipse.ui.preferencePages">
+ <page
+ class="com.amazonaws.eclipse.core.ui.preferences.AwsAccountPreferencePage"
+ id="com.amazonaws.eclipse.core.ui.preferences.AwsAccountPreferencePage"
+ name="AWS Toolkit">
+ </page>
+ </extension>
+
+ <extension point="org.eclipse.core.runtime.preferences">
+ <initializer class="com.amazonaws.eclipse.core.preferences.PreferenceInitializer">
+ </initializer>
+ </extension>
+
+ <extension point="org.eclipse.ui.startup">
+ <startup class="com.amazonaws.eclipse.core.ui.Startup"/>
+ </extension>
+
+ <extension point="org.eclipse.ui.views">
+ <category
+ id="com.amazonaws.eclipse.core.category"
+ name="AWS Toolkit"/>
+ </extension>
+
+ <extension point="org.eclipse.ui.editors">
+ <editor
+ class="com.amazonaws.eclipse.core.ui.overview.OverviewEditor"
+ default="false"
+ icon="icons/aws-box.gif"
+ id="com.amazonaws.eclipse.core.ui.overview"
+ name="AWS Toolkit Overview">
+ </editor>
+ </extension>
+
+ <!--
+ |
+ | Adds AWS specififc commands
+ |
+ -->
+ <extension point="org.eclipse.ui.commands">
+ <category id="com.amazonaws.commands.category"
+ name="AWS Toolkit for Eclipse Commands">
+ </category>
+
+ <command id="com.amazonaws.eclipse.command.displayOverviewEditor"
+ name="Open AWS Toolkit Overview"
+ defaultHandler="com.amazonaws.eclipse.core.ui.DisplayAwsOverviewEditorCmdHandler"
+ categoryId="com.amazonaws.commands.category">
+ </command>
+
+ <command id="com.amazonaws.eclipse.command.openPreferences"
+ name="Open AWS Toolkit Preferences"
+ defaultHandler="com.amazonaws.eclipse.core.ui.menu.OpenPreferencesHandler"
+ categoryId="com.amazonaws.commands.category">
+ </command>
+
+ <command id="com.amazonaws.eclipse.command.openWebConsole"
+ name="Open AWS Management Console"
+ defaultHandler="com.amazonaws.eclipse.core.ui.menu.OpenWebConsoleHandler"
+ categoryId="com.amazonaws.commands.category">
+ </command>
+ </extension>
+
+
+ <!--
+ |
+ | Inserts toolbar button handlers to perform the commands
+ |
+ -->
+ <extension point="org.eclipse.ui.menus">
+ <menuContribution locationURI="popup:org.eclipse.ui.popup.any?after=additions">
+ <menu id="com.amazonaws.eclipse.popup.menu"
+ icon="icons/aws-box.gif"
+ label="Amazon Web Services">
+ <separator name="additions" visible="false"/>
+ </menu>
+ </menuContribution>
+
+ <menuContribution locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">
+ <toolbar id="com.amazonaws.eclipse.toolbar">
+ <command commandId="com.amazonaws.eclipse.command.displayOverviewEditor"
+ icon="icons/aws-box.gif"
+ id="com.amazonaws.eclipse.toolbar.dropDownMenu"
+ style="pulldown"
+ tooltip="AWS Toolkit for Eclipse">
+ </command>
+ </toolbar>
+ </menuContribution>
+
+ <menuContribution locationURI="menu:com.amazonaws.eclipse.toolbar.dropDownMenu">
+ <separator name="java" visible="false"/>
+ <separator name="javaWeb" visible="false"/>
+ <separator name="separator1" visible="true"/>
+
+ <separator name="simpleDB" visible="false"/>
+ <separator name="separator2" visible="true"/>
+
+ <separator name="EC2" visible="false"/>
+ <separator name="separator3" visible="true"/>
+
+ <command commandId="com.amazonaws.eclipse.command.openWebConsole"
+ id="com.amazonaws.eclipse.toolbar.openWebConsole"
+ label="Go to AWS Management Console">
+ </command>
+
+ <separator name="separator4" visible="true"/>
+
+ <command commandId="com.amazonaws.eclipse.command.openPreferences"
+ id="com.amazonaws.toolbar.openPreferences"
+ label="Preferences...">
+ </command>
+ </menuContribution>
+ </extension>
+</plugin>
97 com.amazonaws.eclipse.core/schema/overview.exsd
@@ -0,0 +1,97 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="com.amazonaws.eclipse.core" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appInfo>
+ <meta.schema plugin="com.amazonaws.eclipse.core" id="overview" name="AWS Toolkit Overview"/>
+ </appInfo>
+ <documentation>
+ Internal extension point for features of the AWS Toolkit to contribute to the AWS Toolkit Overview view.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appInfo>
+ <meta.element />
+ </appInfo>
+ </annotation>
+ <complexType>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appInfo>
+ <meta.attribute translatable="true"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="overviewSection">
+ <annotation>
+ <documentation>
+ An overviewSection extension allows components of the AWS Toolkit to hook into the AWS Toolkit Overview and provide new sections.
+ </documentation>
+ </annotation>
+ <complexType>
+ <attribute name="title" type="string" use="required">
+ <annotation>
+ <documentation>
+ The title to display for the contributed overview section.
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ The class extending OverviewSection that provides overview content specific to a component of the AWS Toolkit for Eclipse.
+ </documentation>
+ <appInfo>
+ <meta.attribute kind="java" basedOn="com.amazonaws.eclipse.core.ui.overview.OverviewSection:"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="since"/>
+ </appInfo>
+ <documentation>
+ 1.0.0
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="examples"/>
+ </appInfo>
+ <documentation>
+ &lt;extension point=&quot;com.amazonaws.eclipse.core.overview&quot;&gt;
+ &lt;overviewSection title=&quot;Foo&quot; class=&quot;com.amazonaws.FooOverviewSection&quot;/&gt;
+&lt;/extension&gt;
+ </documentation>
+ </annotation>
+
+
+
+
+</schema>
260 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AWSClientFactory.java
@@ -0,0 +1,260 @@
+/*
+ * Copyright 2010-2011 Amazon Technologies, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
+ * OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.amazonaws.eclipse.core;
+
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.HashMap;
+
+import org.eclipse.core.net.proxy.IProxyChangeEvent;
+import org.eclipse.core.net.proxy.IProxyChangeListener;
+import org.eclipse.core.net.proxy.IProxyData;
+import org.eclipse.core.net.proxy.IProxyService;
+import org.eclipse.core.runtime.Status;
+
+import com.amazonaws.ClientConfiguration;
+import com.amazonaws.auth.BasicAWSCredentials;
+import com.amazonaws.services.elasticbeanstalk.AWSElasticBeanstalk;
+import com.amazonaws.services.elasticbeanstalk.AWSElasticBeanstalkClient;
+import com.amazonaws.services.rds.AmazonRDS;
+import com.amazonaws.services.rds.AmazonRDSClient;
+import com.amazonaws.services.s3.AmazonS3;
+import com.amazonaws.services.s3.AmazonS3Client;
+import com.amazonaws.services.simpledb.AmazonSimpleDB;
+import com.amazonaws.services.simpledb.AmazonSimpleDBClient;
+
+/**
+ * Factory for creating AWS clients.
+ */
+public class AWSClientFactory {
+
+ /**
+ * This constant is intended only for testing so that unit tests can
+ * override the Eclipse preference store implementation of AccountInfo.
+ */
+ public static final String ACCOUNT_INFO_OVERRIDE_PROPERTY = "com.amazonaws.eclipse.test.AccountInfoOverride";
+
+ /**
+ * A shared account info object for accessing the user's account
+ * preferences.
+ */
+ private static final AccountInfo accountInfo;
+
+ /** clients organized by the name of the region they work with. */
+ private static final HashMap<String, AmazonS3> s3ClientsByEndpoint = new HashMap<String, AmazonS3>();
+ private static final HashMap<String, AmazonRDS> rdsClientsByEndpoint = new HashMap<String, AmazonRDS>();
+ private static final HashMap<String, AmazonSimpleDB> sdbClientsByEndpoint = new HashMap<String, AmazonSimpleDB>();
+ private static HashMap<String, AWSElasticBeanstalk> elasticBeanstalkClientsByEndpoint = new HashMap<String, AWSElasticBeanstalk>();
+
+ /**
+ * Adds a listener for the user's account info so that we can update the
+ * client when the account info changes.
+ */
+ static {
+ // Allow account info to be easily overridden for tests
+ String accountInfoOverride = System.getProperty(ACCOUNT_INFO_OVERRIDE_PROPERTY);
+ if ( accountInfoOverride == null ) {
+ accountInfo = AwsToolkitCore.getDefault().getAccountInfo();
+ } else {
+ try {
+ Class<?> accountInfoOverrideClass = Class.forName(accountInfoOverride);
+ accountInfo = (AccountInfo) accountInfoOverrideClass.newInstance();
+ } catch ( Exception e ) {
+ throw new RuntimeException("Unable to load and instantiate account info override class "
+ + accountInfoOverride);
+ }
+ }
+
+ AwsToolkitCore plugin = AwsToolkitCore.getDefault();
+ if ( plugin != null ) {
+ plugin.getProxyService().addProxyChangeListener(new IProxyChangeListener() {
+ public void proxyInfoChanged(IProxyChangeEvent event) {
+ invalidateClients();
+ }
+ });
+
+ plugin.addAccountInfoChangeListener(new AccountInfoChangeListener() {
+ public void currentAccountChanged() {
+ invalidateClients();
+ }
+ });
+ }
+ }
+
+ /**
+ * Invalidates the current set of clients. This method is intended to be
+ * used after configuration changes are made so that the next time a
+ * client is needed, a fresh instance will be created using the most recent
+ * configuration.
+ */
+ private static void invalidateClients() {
+ // Invalidate any region specific clients
+ synchronized (s3ClientsByEndpoint) {s3ClientsByEndpoint.clear();}
+ synchronized (rdsClientsByEndpoint) {rdsClientsByEndpoint.clear();}
+ synchronized (sdbClientsByEndpoint) {sdbClientsByEndpoint.clear();}
+ synchronized (elasticBeanstalkClientsByEndpoint) {elasticBeanstalkClientsByEndpoint.clear();}
+ }
+
+ /**
+ * Returns an S3 client configured with the user's preferences, including
+ * the currently selected endpoint.
+ */
+ public AmazonS3 getS3Client() {
+ return getS3ClientByEndpoint("s3.amazonaws.com");
+ }
+
+ /**
+ * Returns an S3 client configured with the user's preferences, including
+ * the currently selected endpoint.
+ */
+ public AmazonSimpleDB getSimpleDBClient() {
+ return getSimpleDBClientByEndpoints("sdb.amazonaws.com");
+ }
+
+ /**
+ * Returns an S3 client for the specified region endpoint
+ *
+ * @param endpoint
+ * The endpoint that the returned client should work with.
+ */
+ public AmazonS3 getS3ClientByEndpoint(String endpoint) {
+ synchronized (s3ClientsByEndpoint) {
+ if ( s3ClientsByEndpoint.get(endpoint) == null ) {
+ s3ClientsByEndpoint.put(endpoint, createNewS3Client(endpoint));
+ }
+
+ return s3ClientsByEndpoint.get(endpoint);
+ }
+ }
+
+ public AmazonSimpleDB getSimpleDBClientByEndpoints(final String endpoint) {
+ synchronized (sdbClientsByEndpoint) {
+ if ( sdbClientsByEndpoint.get(endpoint) == null ) {
+ sdbClientsByEndpoint.put(endpoint, createNewSDBClient(endpoint));
+ }
+
+ return sdbClientsByEndpoint.get(endpoint);
+ }
+ }
+
+ public AmazonRDS getRDSClientByEndpoint(final String endpoint) {
+ synchronized (rdsClientsByEndpoint) {
+ if ( rdsClientsByEndpoint.get(endpoint) == null) {
+ rdsClientsByEndpoint.put(endpoint, createNewRDSClient(endpoint));
+ }
+
+ return rdsClientsByEndpoint.get(endpoint);
+ }
+ }
+
+ /**
+ * Returns a new SimpleDB client configured to communicate with the specified endpoint.
+ */
+ private AmazonSimpleDB createNewSDBClient(String endpoint) {
+ ClientConfiguration config = createClientConfiguration(endpoint);
+
+ AmazonSimpleDB client = new AmazonSimpleDBClient(new BasicAWSCredentials(accountInfo.getAccessKey(),
+ accountInfo.getSecretKey()), config);
+ client.setEndpoint(endpoint);
+
+ return client;
+ }
+
+ /**
+ * Returns an AWS Elastic Beanstalk client for the specified region endpoint
+ *
+ * @param endpoint
+ * The endpoint that the returned client should work with.
+ */
+ public AWSElasticBeanstalk getElasticBeanstalkClientByEndpoint(String endpoint) {
+ synchronized (elasticBeanstalkClientsByEndpoint) {
+ if ( elasticBeanstalkClientsByEndpoint.get(endpoint) == null ) {
+ elasticBeanstalkClientsByEndpoint.put(endpoint, createNewElasticBeanstalkClient(endpoint));
+ }
+
+ return elasticBeanstalkClientsByEndpoint.get(endpoint);
+ }
+ }
+
+ /**
+ * Returns a new S3 client configured to communicate with the specified
+ * endpoint.
+ */
+ private AmazonS3 createNewS3Client(String endpoint) {
+ ClientConfiguration config = createClientConfiguration(endpoint);
+
+ AmazonS3 client = new AmazonS3Client(new BasicAWSCredentials(accountInfo.getAccessKey(),
+ accountInfo.getSecretKey()), config);
+ client.setEndpoint(endpoint);
+
+ return client;
+ }
+
+ private AmazonRDS createNewRDSClient(String endpoint) {
+ ClientConfiguration config = createClientConfiguration(endpoint);
+
+ AmazonRDS client = new AmazonRDSClient(new BasicAWSCredentials(
+ accountInfo.getAccessKey(), accountInfo.getSecretKey()), config);
+ client.setEndpoint(endpoint);
+
+ return client;
+ }
+
+ /**
+ * Returns a new AWS Elastic Beanstalk client configured to communicate with the
+ * specified endpoint.
+ */
+ private static AWSElasticBeanstalk createNewElasticBeanstalkClient(String endpoint) {
+ ClientConfiguration config = createClientConfiguration(endpoint);
+
+ AWSElasticBeanstalk client = new AWSElasticBeanstalkClient(new BasicAWSCredentials(
+ accountInfo.getAccessKey(),
+ accountInfo.getSecretKey()), config);
+ client.setEndpoint(endpoint);
+
+ return client;
+ }
+
+ private static ClientConfiguration createClientConfiguration(String secureEndpoint) {
+ ClientConfiguration config = new ClientConfiguration();
+ AwsClientUtils clientUtils = new AwsClientUtils();
+
+ config.setUserAgent(clientUtils.formUserAgentString("AWS-Toolkit-For-Eclipse", AwsToolkitCore.getDefault()));
+
+ AwsToolkitCore plugin = AwsToolkitCore.getDefault();
+ if ( plugin != null ) {
+ IProxyService proxyService = AwsToolkitCore.getDefault().getProxyService();
+ if ( proxyService.isProxiesEnabled() ) {
+ try {
+ IProxyData[] proxyData;
+ proxyData = proxyService.select(new URI(secureEndpoint));
+ if ( proxyData.length > 0 ) {
+ config.setProxyHost(proxyData[0].getHost());
+ config.setProxyPort(proxyData[0].getPort());
+
+ if ( proxyData[0].isRequiresAuthentication() ) {
+ config.setProxyUsername(proxyData[0].getUserId());
+ config.setProxyPassword(proxyData[0].getPassword());
+ }
+ }
+ } catch ( URISyntaxException e ) {
+ plugin.getLog().log(new Status(Status.ERROR, AwsToolkitCore.PLUGIN_ID, e.getMessage(), e));
+ }
+ }
+ }
+ return config;
+ }
+
+}
107 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AccountInfo.java
@@ -0,0 +1,107 @@
+/*
+ * Copyright 2008-2011 Amazon Technologies, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
+ * OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.amazonaws.eclipse.core;
+
+import java.io.File;
+
+/**
+ * Abstract class describing the interface for accessing configured AWS account
+ * preferences and provides hooks for notification of change events.
+ */
+public abstract class AccountInfo {
+
+ /**
+ * Returns the currently configured AWS user account ID.
+ *
+ * @return The currently configured AWS user account ID.
+ */
+ public abstract String getUserId();
+
+ /**
+ * Returns the currently configured AWS user access key.
+ *
+ * @return The currently configured AWS user access key.
+ */
+ public abstract String getAccessKey();
+
+ /**
+ * Sets the AWS Access Key ID for this account info object.
+ *
+ * @param accessKey The AWS Access Key ID.
+ */
+ public abstract void setAccessKey(String accessKey);
+
+ /**
+ * Returns the currently configured AWS secret key.
+ *
+ * @return The currently configured AWS secret key.
+ */
+ public abstract String getSecretKey();
+
+ /**
+ * Sets the AWS Secret Access Key for this account info object.
+ *
+ * @param secretKey The AWS Secret Access Key.
+ */
+ public abstract void setSecretKey(String secretKey);
+
+ /**
+ * Returns the currently configured EC2 private key file.
+ *
+ * @return The currently configured EC2 private key file.
+ */
+ public abstract String getEc2PrivateKeyFile();
+
+ /**
+ * Returns the currently configured EC2 certificate file.
+ *
+ * @return The currently configured EC2 certificate file.
+ */
+ public abstract String getEc2CertificateFile();
+
+ /**
+ * Returns true if the configured account information appears to be valid by
+ * verifying that none of the values are missing.
+ *
+ * @return True if the configured account information appears to be valid,
+ * otherwise false.
+ */
+ public boolean isValid() {
+ if (getAccessKey() == null || getAccessKey().length() == 0) return false;
+ if (getSecretKey() == null || getSecretKey().length() == 0) return false;
+ return true;
+ }
+
+ /**
+ * Returns true if and only if the configured certificate and corresponding
+ * private key are valid. Currently that distinction is made by verifying
+ * that the referenced files exist.
+ *
+ * @return True if and only if the configured certificate and corresponding
+ * private key are valid.
+ */
+ public boolean isCertificateValid() {
+ String certificateFile = getEc2CertificateFile();
+ String privateKeyFile = getEc2PrivateKeyFile();
+
+ if (certificateFile == null || certificateFile.length() == 0) return false;
+ if (privateKeyFile == null || privateKeyFile.length() == 0) return false;
+
+ return (new File(certificateFile).isFile() &&
+ new File(privateKeyFile).isFile());
+ }
+
+}
27 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AccountInfoChangeListener.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright 2010-2011 Amazon Technologies, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
+ * OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.amazonaws.eclipse.core;
+
+/**
+ * Listener interface for being notified when AWS account information has changed.
+ */
+public class AccountInfoChangeListener {
+
+ /**
+ * Called when the current AWS account information has been changed or
+ * updated.
+ */
+ public void currentAccountChanged() {}
+}
71 com.amazonaws.eclipse.core/src/com/amazonaws/eclipse/core/AccountInfoMonitor.java
@@ -0,0 +1,71 @@
+/*
+ * Copyright 2010-2011 Amazon Technologies, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://aws.amazon.com/apache2.0
+ *
+ * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
+ * OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.amazonaws.eclipse.core;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.util.IPropertyChangeListener;
+import org.eclipse.jface.util.PropertyChangeEvent;
+
+import com.amazonaws.eclipse.core.preferences.PreferenceConstants;
+
+/**
+ * Responsible for monitoring for account info changes and notifying
+ * listeners.
+ */
+final class AccountInfoMonitor implements IPropertyChangeListener {
+
+ private List<AccountInfoChangeListener> listeners = new ArrayList<AccountInfoChangeListener>();
+
+ private Job no