appengine-sdk 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. data/COPYING +97 -0
  2. data/appengine-java-sdk-1.2.2/ABOUT +24 -0
  3. data/appengine-java-sdk-1.2.2/COPYING +97 -0
  4. data/appengine-java-sdk-1.2.2/README +98 -0
  5. data/appengine-java-sdk-1.2.2/config/sdk/logging.properties +24 -0
  6. data/appengine-java-sdk-1.2.2/config/user/ant-macros.xml +106 -0
  7. data/appengine-java-sdk-1.2.2/config/user/log4j.properties +24 -0
  8. data/appengine-java-sdk-1.2.2/config/user/logging.properties +28 -0
  9. data/appengine-java-sdk-1.2.2/docs/appengine-web.dtd +34 -0
  10. data/appengine-java-sdk-1.2.2/docs/appengine-web.xsd +85 -0
  11. data/appengine-java-sdk-1.2.2/docs/cron.dtd +7 -0
  12. data/appengine-java-sdk-1.2.2/docs/cron.xsd +20 -0
  13. data/appengine-java-sdk-1.2.2/docs/datastore-indexes.dtd +11 -0
  14. data/appengine-java-sdk-1.2.2/docs/datastore-indexes.xsd +40 -0
  15. data/appengine-java-sdk-1.2.2/docs/javadoc/allclasses-frame.html +163 -0
  16. data/appengine-java-sdk-1.2.2/docs/javadoc/allclasses-noframe.html +163 -0
  17. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Blob.html +341 -0
  18. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/DataTypeTranslator.ComparableByteArray.html +308 -0
  19. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/DataTypeTranslator.html +419 -0
  20. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/DataTypeUtils.html +411 -0
  21. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/DatastoreConfig.html +248 -0
  22. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/DatastoreFailureException.html +262 -0
  23. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/DatastoreNeedIndexException.html +245 -0
  24. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/DatastoreService.html +787 -0
  25. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/DatastoreServiceFactory.html +298 -0
  26. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/DatastoreTimeoutException.html +246 -0
  27. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Entity.html +805 -0
  28. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/EntityNotFoundException.html +271 -0
  29. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/EntityTranslator.html +241 -0
  30. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/FetchOptions.Builder.html +305 -0
  31. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/FetchOptions.html +382 -0
  32. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html +351 -0
  33. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Key.html +524 -0
  34. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/KeyFactory.Builder.html +410 -0
  35. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/KeyFactory.html +505 -0
  36. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Link.html +364 -0
  37. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/PreparedQuery.TooManyResultsException.html +247 -0
  38. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/PreparedQuery.html +410 -0
  39. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Query.FilterOperator.html +376 -0
  40. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Query.FilterPredicate.html +373 -0
  41. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Query.SortDirection.html +327 -0
  42. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Query.SortPredicate.html +338 -0
  43. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Query.html +702 -0
  44. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/ShortBlob.html +365 -0
  45. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Text.html +344 -0
  46. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/Transaction.html +287 -0
  47. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/package-frame.html +117 -0
  48. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/package-summary.html +405 -0
  49. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/datastore/package-tree.html +183 -0
  50. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/Composite.Anchor.html +441 -0
  51. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/Composite.html +243 -0
  52. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/CompositeTransform.html +252 -0
  53. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/Image.Format.html +391 -0
  54. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/Image.html +345 -0
  55. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/ImagesService.OutputEncoding.html +327 -0
  56. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/ImagesService.html +452 -0
  57. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/ImagesServiceFactory.html +534 -0
  58. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/ImagesServiceFailureException.html +248 -0
  59. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/Transform.html +234 -0
  60. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/package-frame.html +77 -0
  61. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/package-summary.html +257 -0
  62. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/images/package-tree.html +178 -0
  63. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/mail/MailService.Attachment.html +291 -0
  64. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/mail/MailService.Message.html +763 -0
  65. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/mail/MailService.html +280 -0
  66. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/mail/MailServiceFactory.html +257 -0
  67. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/mail/package-frame.html +47 -0
  68. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/mail/package-summary.html +224 -0
  69. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/mail/package-tree.html +156 -0
  70. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/ErrorHandler.html +251 -0
  71. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/Expiration.html +347 -0
  72. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/InvalidValueException.html +264 -0
  73. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/LogAndContinueErrorHandler.html +297 -0
  74. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/MemcacheService.SetPolicy.html +351 -0
  75. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/MemcacheService.html +808 -0
  76. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/MemcacheServiceException.html +262 -0
  77. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/MemcacheServiceFactory.html +231 -0
  78. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/Stats.html +319 -0
  79. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/StrictErrorHandler.html +291 -0
  80. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/package-frame.html +77 -0
  81. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/package-summary.html +271 -0
  82. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/memcache/package-tree.html +175 -0
  83. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/FetchOptions.Builder.html +305 -0
  84. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/FetchOptions.html +414 -0
  85. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/HTTPHeader.html +292 -0
  86. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/HTTPMethod.html +373 -0
  87. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/HTTPRequest.html +490 -0
  88. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/HTTPResponse.html +286 -0
  89. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/ResponseTooLargeException.html +244 -0
  90. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/URLFetchService.html +260 -0
  91. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/URLFetchServiceFactory.html +250 -0
  92. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/package-frame.html +75 -0
  93. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/package-summary.html +251 -0
  94. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/urlfetch/package-tree.html +177 -0
  95. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/users/User.html +411 -0
  96. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/users/UserService.html +318 -0
  97. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/users/UserServiceFactory.html +223 -0
  98. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/users/UserServiceFailureException.html +244 -0
  99. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/users/package-frame.html +56 -0
  100. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/users/package-summary.html +239 -0
  101. data/appengine-java-sdk-1.2.2/docs/javadoc/com/google/appengine/api/users/package-tree.html +164 -0
  102. data/appengine-java-sdk-1.2.2/docs/javadoc/constant-values.html +274 -0
  103. data/appengine-java-sdk-1.2.2/docs/javadoc/deprecated-list.html +159 -0
  104. data/appengine-java-sdk-1.2.2/docs/javadoc/dev_javadoc.css +109 -0
  105. data/appengine-java-sdk-1.2.2/docs/javadoc/help-doc.html +217 -0
  106. data/appengine-java-sdk-1.2.2/docs/javadoc/index-all.html +1413 -0
  107. data/appengine-java-sdk-1.2.2/docs/javadoc/index.html +39 -0
  108. data/appengine-java-sdk-1.2.2/docs/javadoc/overview-frame.html +52 -0
  109. data/appengine-java-sdk-1.2.2/docs/javadoc/overview-summary.html +179 -0
  110. data/appengine-java-sdk-1.2.2/docs/javadoc/overview-tree.html +194 -0
  111. data/appengine-java-sdk-1.2.2/docs/javadoc/package-list +6 -0
  112. data/appengine-java-sdk-1.2.2/docs/javadoc/resources/inherit.gif +0 -0
  113. data/appengine-java-sdk-1.2.2/docs/javadoc/serialized-form.html +958 -0
  114. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/allclasses-frame.html +97 -0
  115. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/allclasses-noframe.html +97 -0
  116. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/KickStart.html +258 -0
  117. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/AdminException.html +263 -0
  118. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/AppAdmin.LogSeverity.html +375 -0
  119. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/AppAdmin.html +380 -0
  120. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/AppAdminFactory.ConnectOptions.html +627 -0
  121. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/AppAdminFactory.PasswordPrompt.html +211 -0
  122. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/AppAdminFactory.html +434 -0
  123. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/Application.html +493 -0
  124. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/UpdateFailureEvent.html +269 -0
  125. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/UpdateListener.html +254 -0
  126. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/UpdateProgressEvent.html +272 -0
  127. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/UpdateSuccessEvent.html +226 -0
  128. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/package-frame.html +79 -0
  129. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/package-summary.html +227 -0
  130. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/admin/package-tree.html +173 -0
  131. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/AbstractContainerService.html +497 -0
  132. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/ApiProxyLocal.html +285 -0
  133. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/ApiProxyLocalFactory.html +307 -0
  134. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/ApiProxyLocalImpl.html +370 -0
  135. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/ContainerService.EnvironmentVariableMismatchSeverity.html +327 -0
  136. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/ContainerService.html +437 -0
  137. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/DevAppServer.html +459 -0
  138. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/DevAppServerFactory.html +262 -0
  139. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/DevAppServerMain.html +300 -0
  140. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/gwt/AppEngineLauncher.html +262 -0
  141. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/gwt/package-frame.html +32 -0
  142. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/gwt/package-summary.html +155 -0
  143. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/gwt/package-tree.html +153 -0
  144. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/package-frame.html +66 -0
  145. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/package-summary.html +214 -0
  146. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/development/package-tree.html +168 -0
  147. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/enhancer/Enhance.html +268 -0
  148. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/enhancer/Enhancer.html +298 -0
  149. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/enhancer/EnhancerTask.html +505 -0
  150. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/enhancer/package-frame.html +36 -0
  151. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/enhancer/package-summary.html +163 -0
  152. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/enhancer/package-tree.html +153 -0
  153. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/LocalVersionFactory.html +256 -0
  154. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/RemoteVersionFactory.html +266 -0
  155. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/SdkInfo.html +419 -0
  156. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/SupportInfo.html +225 -0
  157. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/UpdateCheck.html +349 -0
  158. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/UpdateCheckResults.VersionComparator.html +281 -0
  159. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/UpdateCheckResults.html +374 -0
  160. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/Version.html +329 -0
  161. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/package-frame.html +46 -0
  162. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/package-summary.html +195 -0
  163. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/info/package-tree.html +152 -0
  164. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/package-frame.html +32 -0
  165. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/package-summary.html +155 -0
  166. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/package-tree.html +151 -0
  167. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/util/ApiVersionFinder.html +302 -0
  168. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/util/package-frame.html +32 -0
  169. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/util/package-summary.html +156 -0
  170. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/com/google/appengine/tools/util/package-tree.html +151 -0
  171. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/constant-values.html +196 -0
  172. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/deprecated-list.html +144 -0
  173. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/dev_javadoc.css +109 -0
  174. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/help-doc.html +217 -0
  175. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/index-all.html +784 -0
  176. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/index.html +39 -0
  177. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/overview-frame.html +54 -0
  178. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/overview-summary.html +173 -0
  179. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/overview-tree.html +179 -0
  180. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/package-list +7 -0
  181. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/resources/inherit.gif +0 -0
  182. data/appengine-java-sdk-1.2.2/docs/tools/javadoc/serialized-form.html +461 -0
  183. data/appengine-java-sdk-1.2.2/lib/appengine-tools-api.jar +0 -0
  184. data/appengine-java-sdk-1.2.2/lib/impl/appengine-api-stubs.jar +0 -0
  185. data/appengine-java-sdk-1.2.2/lib/impl/appengine-api.jar +0 -0
  186. data/appengine-java-sdk-1.2.2/lib/impl/appengine-local-runtime.jar +0 -0
  187. data/appengine-java-sdk-1.2.2/lib/shared/appengine-local-runtime-shared.jar +0 -0
  188. data/appengine-java-sdk-1.2.2/lib/shared/geronimo-el_1.0_spec-1.0.1.jar +0 -0
  189. data/appengine-java-sdk-1.2.2/lib/shared/geronimo-jsp_2.1_spec-1.0.1.jar +0 -0
  190. data/appengine-java-sdk-1.2.2/lib/shared/geronimo-servlet_2.5_spec-1.2.jar +0 -0
  191. data/appengine-java-sdk-1.2.2/lib/shared/jsp/LICENSE +203 -0
  192. data/appengine-java-sdk-1.2.2/lib/shared/jsp/repackaged-appengine-ant-1.6.5.jar +0 -0
  193. data/appengine-java-sdk-1.2.2/lib/shared/jsp/repackaged-appengine-ant-launcher-1.6.5.jar +0 -0
  194. data/appengine-java-sdk-1.2.2/lib/shared/jsp/repackaged-appengine-commons-el-1.0.jar +0 -0
  195. data/appengine-java-sdk-1.2.2/lib/shared/jsp/repackaged-appengine-commons-logging-1.1.1.jar +0 -0
  196. data/appengine-java-sdk-1.2.2/lib/shared/jsp/repackaged-appengine-jasper-compiler-5.0.28.jar +0 -0
  197. data/appengine-java-sdk-1.2.2/lib/shared/jsp/repackaged-appengine-jasper-runtime-5.0.28.jar +0 -0
  198. data/appengine-java-sdk-1.2.2/lib/tools/jsp/LICENSE +203 -0
  199. data/appengine-java-sdk-1.2.2/lib/tools/jsp/repackaged-appengine-jakarta-jstl-1.1.2.jar +0 -0
  200. data/appengine-java-sdk-1.2.2/lib/tools/jsp/repackaged-appengine-jakarta-standard-1.1.2.jar +0 -0
  201. data/appengine-java-sdk-1.2.2/lib/user/appengine-api-1.0-sdk-1.2.2.jar +0 -0
  202. data/lib/appengine-sdk.rb +96 -0
  203. metadata +256 -0
@@ -0,0 +1,287 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+ <!--NewPage-->
3
+ <HTML>
4
+ <HEAD>
5
+ <!-- Generated by javadoc (build 1.6.0-google-internal) on Sun Jul 12 08:39:57 CDT 2009 -->
6
+ <TITLE>
7
+ Transaction
8
+ </TITLE>
9
+
10
+ <META NAME="date" CONTENT="2009-07-12">
11
+
12
+ <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../dev_javadoc.css" TITLE="Style">
13
+
14
+ <SCRIPT type="text/javascript">
15
+ function windowTitle()
16
+ {
17
+ if (location.href.indexOf('is-external=true') == -1) {
18
+ parent.document.title="Transaction";
19
+ }
20
+ }
21
+ </SCRIPT>
22
+ <NOSCRIPT>
23
+ </NOSCRIPT>
24
+
25
+ </HEAD>
26
+
27
+ <BODY BGCOLOR="white" onload="windowTitle();">
28
+ <HR>
29
+
30
+
31
+ <!-- ========= START OF TOP NAVBAR ======= -->
32
+ <A NAME="navbar_top"><!-- --></A>
33
+ <A HREF="#skip-navbar_top" title="Skip navigation links"></A>
34
+ <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
35
+ <TR>
36
+ <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
37
+ <A NAME="navbar_top_firstrow"><!-- --></A>
38
+ <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
39
+ <TR ALIGN="center" VALIGN="top">
40
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
41
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
42
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
43
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
44
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
45
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
46
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
47
+ </TR>
48
+ </TABLE>
49
+ </TD>
50
+ <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
51
+ </EM>
52
+ </TD>
53
+ </TR>
54
+
55
+ <TR>
56
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
57
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/Text.html" title="class in com.google.appengine.api.datastore"><B>PREV CLASS</B></A>&nbsp;
58
+ &nbsp;NEXT CLASS</FONT></TD>
59
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
60
+ <A HREF="../../../../../index.html?com/google/appengine/api/datastore/Transaction.html" target="_top"><B>FRAMES</B></A> &nbsp;
61
+ &nbsp;<A HREF="Transaction.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
62
+ &nbsp;<SCRIPT type="text/javascript">
63
+ <!--
64
+ if(window==top) {
65
+ document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
66
+ }
67
+ //-->
68
+ </SCRIPT>
69
+ <NOSCRIPT>
70
+ <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
71
+ </NOSCRIPT>
72
+
73
+
74
+ </FONT></TD>
75
+ </TR>
76
+ <TR>
77
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
78
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
79
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
80
+ DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
81
+ </TR>
82
+ </TABLE>
83
+ <A NAME="skip-navbar_top"></A>
84
+ <!-- ========= END OF TOP NAVBAR ========= -->
85
+
86
+ <HR>
87
+ <!-- ======== START OF CLASS DATA ======== -->
88
+ <H2>
89
+ <FONT SIZE="-1">
90
+ com.google.appengine.api.datastore</FONT>
91
+ <BR>
92
+ Interface Transaction</H2>
93
+ <HR>
94
+ <DL>
95
+ <DT><PRE>public interface <B>Transaction</B></DL>
96
+ </PRE>
97
+
98
+ <P>
99
+ Describes a logical unit of work to be performed against the datastore.
100
+ Operations performed as part of a single <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A> succeed or fail
101
+ as a unit.
102
+ <P>
103
+
104
+ <P>
105
+ <HR>
106
+
107
+ <P>
108
+
109
+ <!-- ========== METHOD SUMMARY =========== -->
110
+
111
+ <A NAME="method_summary"><!-- --></A>
112
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
113
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
114
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
115
+ <B>Method Summary</B></FONT></TH>
116
+ </TR>
117
+ <TR BGCOLOR="white" CLASS="TableRowColor">
118
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
119
+ <CODE>&nbsp;void</CODE></FONT></TD>
120
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#commit()">commit</A></B>()</CODE>
121
+
122
+ <BR>
123
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Commits the transaction.</TD>
124
+ </TR>
125
+ <TR BGCOLOR="white" CLASS="TableRowColor">
126
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
127
+ <CODE>&nbsp;java.lang.String</CODE></FONT></TD>
128
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#getId()">getId</A></B>()</CODE>
129
+
130
+ <BR>
131
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
132
+ </TR>
133
+ <TR BGCOLOR="white" CLASS="TableRowColor">
134
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
135
+ <CODE>&nbsp;boolean</CODE></FONT></TD>
136
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#isActive()">isActive</A></B>()</CODE>
137
+
138
+ <BR>
139
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
140
+ </TR>
141
+ <TR BGCOLOR="white" CLASS="TableRowColor">
142
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
143
+ <CODE>&nbsp;void</CODE></FONT></TD>
144
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#rollback()">rollback</A></B>()</CODE>
145
+
146
+ <BR>
147
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Rolls back the transaction.</TD>
148
+ </TR>
149
+ </TABLE>
150
+ &nbsp;
151
+ <P>
152
+
153
+ <!-- ============ METHOD DETAIL ========== -->
154
+
155
+ <A NAME="method_detail"><!-- --></A>
156
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
157
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
158
+ <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
159
+ <B>Method Detail</B></FONT></TH>
160
+ </TR>
161
+ </TABLE>
162
+
163
+ <A NAME="commit()"><!-- --></A><H3>
164
+ commit</H3>
165
+ <PRE>
166
+ void <B>commit</B>()</PRE>
167
+ <DL>
168
+ <DD>Commits the transaction. Whether this call succeeds or fails, all
169
+ subsequent method invocations on this object will throw
170
+ <CODE>IllegalStateException</CODE>.
171
+ <P>
172
+ <DD><DL>
173
+
174
+ <DT><B>Throws:</B>
175
+ <DD><CODE>java.lang.IllegalStateException</CODE> - If the transaction has already been
176
+ committed, rolled back, or an attempt to commit or roll back has
177
+ already failed.
178
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore">DatastoreFailureException</A></CODE> - If a datastore error occurs.</DL>
179
+ </DD>
180
+ </DL>
181
+ <HR>
182
+
183
+ <A NAME="rollback()"><!-- --></A><H3>
184
+ rollback</H3>
185
+ <PRE>
186
+ void <B>rollback</B>()</PRE>
187
+ <DL>
188
+ <DD>Rolls back the transaction. Whether this call succeeds or fails, all
189
+ subsequent method invocations on this object will throw
190
+ <CODE>IllegalStateException</CODE>.
191
+ <P>
192
+ <DD><DL>
193
+
194
+ <DT><B>Throws:</B>
195
+ <DD><CODE>java.lang.IllegalStateException</CODE> - If the transaction has already been
196
+ committed, rolled back, or an attempt to commit or roll back has
197
+ already failed.
198
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore">DatastoreFailureException</A></CODE> - If a datastore error occurs.</DL>
199
+ </DD>
200
+ </DL>
201
+ <HR>
202
+
203
+ <A NAME="getId()"><!-- --></A><H3>
204
+ getId</H3>
205
+ <PRE>
206
+ java.lang.String <B>getId</B>()</PRE>
207
+ <DL>
208
+ <DD><DL>
209
+
210
+ <DT><B>Returns:</B><DD>The globally unique identifier for the <code>Transaction</code>.</DL>
211
+ </DD>
212
+ </DL>
213
+ <HR>
214
+
215
+ <A NAME="isActive()"><!-- --></A><H3>
216
+ isActive</H3>
217
+ <PRE>
218
+ boolean <B>isActive</B>()</PRE>
219
+ <DL>
220
+ <DD><DL>
221
+
222
+ <DT><B>Returns:</B><DD><code>true</code> if the transaction is active, <code>false</code> otherwise.</DL>
223
+ </DD>
224
+ </DL>
225
+ <!-- ========= END OF CLASS DATA ========= -->
226
+ <HR>
227
+
228
+
229
+ <!-- ======= START OF BOTTOM NAVBAR ====== -->
230
+ <A NAME="navbar_bottom"><!-- --></A>
231
+ <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
232
+ <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
233
+ <TR>
234
+ <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
235
+ <A NAME="navbar_bottom_firstrow"><!-- --></A>
236
+ <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
237
+ <TR ALIGN="center" VALIGN="top">
238
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
239
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
240
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
241
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
242
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
243
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
244
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
245
+ </TR>
246
+ </TABLE>
247
+ </TD>
248
+ <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
249
+ </EM>
250
+ </TD>
251
+ </TR>
252
+
253
+ <TR>
254
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
255
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/Text.html" title="class in com.google.appengine.api.datastore"><B>PREV CLASS</B></A>&nbsp;
256
+ &nbsp;NEXT CLASS</FONT></TD>
257
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
258
+ <A HREF="../../../../../index.html?com/google/appengine/api/datastore/Transaction.html" target="_top"><B>FRAMES</B></A> &nbsp;
259
+ &nbsp;<A HREF="Transaction.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
260
+ &nbsp;<SCRIPT type="text/javascript">
261
+ <!--
262
+ if(window==top) {
263
+ document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
264
+ }
265
+ //-->
266
+ </SCRIPT>
267
+ <NOSCRIPT>
268
+ <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
269
+ </NOSCRIPT>
270
+
271
+
272
+ </FONT></TD>
273
+ </TR>
274
+ <TR>
275
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
276
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
277
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
278
+ DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
279
+ </TR>
280
+ </TABLE>
281
+ <A NAME="skip-navbar_bottom"></A>
282
+ <!-- ======== END OF BOTTOM NAVBAR ======= -->
283
+
284
+ <HR>
285
+
286
+ </BODY>
287
+ </HTML>
@@ -0,0 +1,117 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+ <!--NewPage-->
3
+ <HTML>
4
+ <HEAD>
5
+ <!-- Generated by javadoc (build 1.6.0-google-internal) on Sun Jul 12 08:39:57 CDT 2009 -->
6
+ <TITLE>
7
+ com.google.appengine.api.datastore
8
+ </TITLE>
9
+
10
+ <META NAME="date" CONTENT="2009-07-12">
11
+
12
+ <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../dev_javadoc.css" TITLE="Style">
13
+
14
+
15
+ </HEAD>
16
+
17
+ <BODY BGCOLOR="white">
18
+ <FONT size="+1" CLASS="FrameTitleFont">
19
+ <A HREF="../../../../../com/google/appengine/api/datastore/package-summary.html" target="classFrame">com.google.appengine.api.datastore</A></FONT>
20
+ <TABLE BORDER="0" WIDTH="100%" SUMMARY="">
21
+ <TR>
22
+ <TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
23
+ Interfaces</FONT>&nbsp;
24
+ <FONT CLASS="FrameItemFont">
25
+ <BR>
26
+ <A HREF="DatastoreConfig.html" title="interface in com.google.appengine.api.datastore" target="classFrame"><I>DatastoreConfig</I></A>
27
+ <BR>
28
+ <A HREF="DatastoreService.html" title="interface in com.google.appengine.api.datastore" target="classFrame"><I>DatastoreService</I></A>
29
+ <BR>
30
+ <A HREF="PreparedQuery.html" title="interface in com.google.appengine.api.datastore" target="classFrame"><I>PreparedQuery</I></A>
31
+ <BR>
32
+ <A HREF="Transaction.html" title="interface in com.google.appengine.api.datastore" target="classFrame"><I>Transaction</I></A></FONT></TD>
33
+ </TR>
34
+ </TABLE>
35
+
36
+
37
+ <TABLE BORDER="0" WIDTH="100%" SUMMARY="">
38
+ <TR>
39
+ <TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
40
+ Classes</FONT>&nbsp;
41
+ <FONT CLASS="FrameItemFont">
42
+ <BR>
43
+ <A HREF="Blob.html" title="class in com.google.appengine.api.datastore" target="classFrame">Blob</A>
44
+ <BR>
45
+ <A HREF="DatastoreServiceFactory.html" title="class in com.google.appengine.api.datastore" target="classFrame">DatastoreServiceFactory</A>
46
+ <BR>
47
+ <A HREF="DataTypeTranslator.html" title="class in com.google.appengine.api.datastore" target="classFrame">DataTypeTranslator</A>
48
+ <BR>
49
+ <A HREF="DataTypeTranslator.ComparableByteArray.html" title="class in com.google.appengine.api.datastore" target="classFrame">DataTypeTranslator.ComparableByteArray</A>
50
+ <BR>
51
+ <A HREF="DataTypeUtils.html" title="class in com.google.appengine.api.datastore" target="classFrame">DataTypeUtils</A>
52
+ <BR>
53
+ <A HREF="Entity.html" title="class in com.google.appengine.api.datastore" target="classFrame">Entity</A>
54
+ <BR>
55
+ <A HREF="EntityTranslator.html" title="class in com.google.appengine.api.datastore" target="classFrame">EntityTranslator</A>
56
+ <BR>
57
+ <A HREF="FetchOptions.html" title="class in com.google.appengine.api.datastore" target="classFrame">FetchOptions</A>
58
+ <BR>
59
+ <A HREF="FetchOptions.Builder.html" title="class in com.google.appengine.api.datastore" target="classFrame">FetchOptions.Builder</A>
60
+ <BR>
61
+ <A HREF="Key.html" title="class in com.google.appengine.api.datastore" target="classFrame">Key</A>
62
+ <BR>
63
+ <A HREF="KeyFactory.html" title="class in com.google.appengine.api.datastore" target="classFrame">KeyFactory</A>
64
+ <BR>
65
+ <A HREF="KeyFactory.Builder.html" title="class in com.google.appengine.api.datastore" target="classFrame">KeyFactory.Builder</A>
66
+ <BR>
67
+ <A HREF="Link.html" title="class in com.google.appengine.api.datastore" target="classFrame">Link</A>
68
+ <BR>
69
+ <A HREF="Query.html" title="class in com.google.appengine.api.datastore" target="classFrame">Query</A>
70
+ <BR>
71
+ <A HREF="Query.FilterPredicate.html" title="class in com.google.appengine.api.datastore" target="classFrame">Query.FilterPredicate</A>
72
+ <BR>
73
+ <A HREF="Query.SortPredicate.html" title="class in com.google.appengine.api.datastore" target="classFrame">Query.SortPredicate</A>
74
+ <BR>
75
+ <A HREF="ShortBlob.html" title="class in com.google.appengine.api.datastore" target="classFrame">ShortBlob</A>
76
+ <BR>
77
+ <A HREF="Text.html" title="class in com.google.appengine.api.datastore" target="classFrame">Text</A></FONT></TD>
78
+ </TR>
79
+ </TABLE>
80
+
81
+
82
+ <TABLE BORDER="0" WIDTH="100%" SUMMARY="">
83
+ <TR>
84
+ <TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
85
+ Enums</FONT>&nbsp;
86
+ <FONT CLASS="FrameItemFont">
87
+ <BR>
88
+ <A HREF="ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore" target="classFrame">ImplicitTransactionManagementPolicy</A>
89
+ <BR>
90
+ <A HREF="Query.FilterOperator.html" title="enum in com.google.appengine.api.datastore" target="classFrame">Query.FilterOperator</A>
91
+ <BR>
92
+ <A HREF="Query.SortDirection.html" title="enum in com.google.appengine.api.datastore" target="classFrame">Query.SortDirection</A></FONT></TD>
93
+ </TR>
94
+ </TABLE>
95
+
96
+
97
+ <TABLE BORDER="0" WIDTH="100%" SUMMARY="">
98
+ <TR>
99
+ <TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
100
+ Exceptions</FONT>&nbsp;
101
+ <FONT CLASS="FrameItemFont">
102
+ <BR>
103
+ <A HREF="DatastoreFailureException.html" title="class in com.google.appengine.api.datastore" target="classFrame">DatastoreFailureException</A>
104
+ <BR>
105
+ <A HREF="DatastoreNeedIndexException.html" title="class in com.google.appengine.api.datastore" target="classFrame">DatastoreNeedIndexException</A>
106
+ <BR>
107
+ <A HREF="DatastoreTimeoutException.html" title="class in com.google.appengine.api.datastore" target="classFrame">DatastoreTimeoutException</A>
108
+ <BR>
109
+ <A HREF="EntityNotFoundException.html" title="class in com.google.appengine.api.datastore" target="classFrame">EntityNotFoundException</A>
110
+ <BR>
111
+ <A HREF="PreparedQuery.TooManyResultsException.html" title="class in com.google.appengine.api.datastore" target="classFrame">PreparedQuery.TooManyResultsException</A></FONT></TD>
112
+ </TR>
113
+ </TABLE>
114
+
115
+
116
+ </BODY>
117
+ </HTML>
@@ -0,0 +1,405 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+ <!--NewPage-->
3
+ <HTML>
4
+ <HEAD>
5
+ <!-- Generated by javadoc (build 1.6.0-google-internal) on Sun Jul 12 08:39:57 CDT 2009 -->
6
+ <TITLE>
7
+ com.google.appengine.api.datastore
8
+ </TITLE>
9
+
10
+ <META NAME="date" CONTENT="2009-07-12">
11
+
12
+ <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../dev_javadoc.css" TITLE="Style">
13
+
14
+ <SCRIPT type="text/javascript">
15
+ function windowTitle()
16
+ {
17
+ if (location.href.indexOf('is-external=true') == -1) {
18
+ parent.document.title="com.google.appengine.api.datastore";
19
+ }
20
+ }
21
+ </SCRIPT>
22
+ <NOSCRIPT>
23
+ </NOSCRIPT>
24
+
25
+ </HEAD>
26
+
27
+ <BODY BGCOLOR="white" onload="windowTitle();">
28
+ <HR>
29
+
30
+
31
+ <!-- ========= START OF TOP NAVBAR ======= -->
32
+ <A NAME="navbar_top"><!-- --></A>
33
+ <A HREF="#skip-navbar_top" title="Skip navigation links"></A>
34
+ <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
35
+ <TR>
36
+ <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
37
+ <A NAME="navbar_top_firstrow"><!-- --></A>
38
+ <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
39
+ <TR ALIGN="center" VALIGN="top">
40
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
41
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
42
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
43
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
44
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
45
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
46
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
47
+ </TR>
48
+ </TABLE>
49
+ </TD>
50
+ <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
51
+ </EM>
52
+ </TD>
53
+ </TR>
54
+
55
+ <TR>
56
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
57
+ &nbsp;PREV PACKAGE&nbsp;
58
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/images/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
59
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
60
+ <A HREF="../../../../../index.html?com/google/appengine/api/datastore/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
61
+ &nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
62
+ &nbsp;<SCRIPT type="text/javascript">
63
+ <!--
64
+ if(window==top) {
65
+ document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
66
+ }
67
+ //-->
68
+ </SCRIPT>
69
+ <NOSCRIPT>
70
+ <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
71
+ </NOSCRIPT>
72
+
73
+
74
+ </FONT></TD>
75
+ </TR>
76
+ </TABLE>
77
+ <A NAME="skip-navbar_top"></A>
78
+ <!-- ========= END OF TOP NAVBAR ========= -->
79
+
80
+ <HR>
81
+ <H2>
82
+ Package com.google.appengine.api.datastore
83
+ </H2>
84
+ The datastore provides persistent storage for App Engine applications, used
85
+ either directly or via the provided JDO or JPA interfaces.
86
+ <P>
87
+ <B>See:</B>
88
+ <BR>
89
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="#package_description"><B>Description</B></A>
90
+ <P>
91
+
92
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
93
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
94
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
95
+ <B>Interface Summary</B></FONT></TH>
96
+ </TR>
97
+ <TR BGCOLOR="white" CLASS="TableRowColor">
98
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreConfig.html" title="interface in com.google.appengine.api.datastore">DatastoreConfig</A></B></TD>
99
+ <TD>User-configurable properties of the datastore.</TD>
100
+ </TR>
101
+ <TR BGCOLOR="white" CLASS="TableRowColor">
102
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html" title="interface in com.google.appengine.api.datastore">DatastoreService</A></B></TD>
103
+ <TD>The <code>DatastoreService</code> provides access to a schema-less data
104
+ storage system.</TD>
105
+ </TR>
106
+ <TR BGCOLOR="white" CLASS="TableRowColor">
107
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/PreparedQuery.html" title="interface in com.google.appengine.api.datastore">PreparedQuery</A></B></TD>
108
+ <TD>Contains methods for fetching and returning entities
109
+ from a <code>Query</code>.</TD>
110
+ </TR>
111
+ <TR BGCOLOR="white" CLASS="TableRowColor">
112
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A></B></TD>
113
+ <TD>Describes a logical unit of work to be performed against the datastore.</TD>
114
+ </TR>
115
+ </TABLE>
116
+ &nbsp;
117
+
118
+ <P>
119
+
120
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
121
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
122
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
123
+ <B>Class Summary</B></FONT></TH>
124
+ </TR>
125
+ <TR BGCOLOR="white" CLASS="TableRowColor">
126
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Blob.html" title="class in com.google.appengine.api.datastore">Blob</A></B></TD>
127
+ <TD><code>Blob</code> contains an array of bytes of unlimited size.</TD>
128
+ </TR>
129
+ <TR BGCOLOR="white" CLASS="TableRowColor">
130
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreServiceFactory.html" title="class in com.google.appengine.api.datastore">DatastoreServiceFactory</A></B></TD>
131
+ <TD>Creates DatastoreService implementations.</TD>
132
+ </TR>
133
+ <TR BGCOLOR="white" CLASS="TableRowColor">
134
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/DataTypeTranslator.html" title="class in com.google.appengine.api.datastore">DataTypeTranslator</A></B></TD>
135
+ <TD><code>DataTypeTranslator</code> is a utility class for converting
136
+ between the data store's <code>Property</code> protocol buffers and the
137
+ the user-facing classes (<code>String</code>, <code>User</code>, etc.).</TD>
138
+ </TR>
139
+ <TR BGCOLOR="white" CLASS="TableRowColor">
140
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/DataTypeTranslator.ComparableByteArray.html" title="class in com.google.appengine.api.datastore">DataTypeTranslator.ComparableByteArray</A></B></TD>
141
+ <TD>A wrapper for a <code>byte[]</code> that implements <CODE>Comparable</CODE>.</TD>
142
+ </TR>
143
+ <TR BGCOLOR="white" CLASS="TableRowColor">
144
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/DataTypeUtils.html" title="class in com.google.appengine.api.datastore">DataTypeUtils</A></B></TD>
145
+ <TD><code>DataTypeUtils</code> presents a simpler interface that allows
146
+ user-code to determine what Classes can safely be stored as
147
+ properties in the data store.</TD>
148
+ </TR>
149
+ <TR BGCOLOR="white" CLASS="TableRowColor">
150
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A></B></TD>
151
+ <TD><code>Entity</code> is the fundamental unit of data storage.</TD>
152
+ </TR>
153
+ <TR BGCOLOR="white" CLASS="TableRowColor">
154
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/EntityTranslator.html" title="class in com.google.appengine.api.datastore">EntityTranslator</A></B></TD>
155
+ <TD><code>EntityTranslator</code> contains the logic to translate an <code>Entity</code> into the protocol buffers that are used to pass it to the
156
+ implementation of the API.</TD>
157
+ </TR>
158
+ <TR BGCOLOR="white" CLASS="TableRowColor">
159
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/FetchOptions.html" title="class in com.google.appengine.api.datastore">FetchOptions</A></B></TD>
160
+ <TD>Describes the limit, offset, and chunk size to be applied when
161
+ executing a <A HREF="../../../../../com/google/appengine/api/datastore/PreparedQuery.html" title="interface in com.google.appengine.api.datastore"><CODE>PreparedQuery</CODE></A>.</TD>
162
+ </TR>
163
+ <TR BGCOLOR="white" CLASS="TableRowColor">
164
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/FetchOptions.Builder.html" title="class in com.google.appengine.api.datastore">FetchOptions.Builder</A></B></TD>
165
+ <TD>Contains static creation methods for <A HREF="../../../../../com/google/appengine/api/datastore/FetchOptions.html" title="class in com.google.appengine.api.datastore"><CODE>FetchOptions</CODE></A>.</TD>
166
+ </TR>
167
+ <TR BGCOLOR="white" CLASS="TableRowColor">
168
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A></B></TD>
169
+ <TD>The primary key for a datastore entity.</TD>
170
+ </TR>
171
+ <TR BGCOLOR="white" CLASS="TableRowColor">
172
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/KeyFactory.html" title="class in com.google.appengine.api.datastore">KeyFactory</A></B></TD>
173
+ <TD>Allows you to create arbitrary <code>Key</code> objects in the root
174
+ entity group group (no parent).</TD>
175
+ </TR>
176
+ <TR BGCOLOR="white" CLASS="TableRowColor">
177
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/KeyFactory.Builder.html" title="class in com.google.appengine.api.datastore">KeyFactory.Builder</A></B></TD>
178
+ <TD>Helper class that aids in the construction of <A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore"><CODE>Keys</CODE></A> with
179
+ ancestors.</TD>
180
+ </TR>
181
+ <TR BGCOLOR="white" CLASS="TableRowColor">
182
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Link.html" title="class in com.google.appengine.api.datastore">Link</A></B></TD>
183
+ <TD>A <code>Link</code> is a URL of limited length.</TD>
184
+ </TR>
185
+ <TR BGCOLOR="white" CLASS="TableRowColor">
186
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Query.html" title="class in com.google.appengine.api.datastore">Query</A></B></TD>
187
+ <TD><code>Query</code> encapsulates a request for zero or more <code>Entity</code> objects out of the datastore.</TD>
188
+ </TR>
189
+ <TR BGCOLOR="white" CLASS="TableRowColor">
190
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Query.FilterPredicate.html" title="class in com.google.appengine.api.datastore">Query.FilterPredicate</A></B></TD>
191
+ <TD>FilterPredicate is a data container that holds a single filter
192
+ predicate.</TD>
193
+ </TR>
194
+ <TR BGCOLOR="white" CLASS="TableRowColor">
195
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Query.SortPredicate.html" title="class in com.google.appengine.api.datastore">Query.SortPredicate</A></B></TD>
196
+ <TD>SortPredicate is a data container that holds a single sort
197
+ predicate.</TD>
198
+ </TR>
199
+ <TR BGCOLOR="white" CLASS="TableRowColor">
200
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/ShortBlob.html" title="class in com.google.appengine.api.datastore">ShortBlob</A></B></TD>
201
+ <TD><code>ShortBlob</code> contains an array of bytes no longer than
202
+ <A HREF="../../../../../com/google/appengine/api/datastore/DataTypeUtils.html#MAX_SHORT_BLOB_PROPERTY_LENGTH"><CODE>DataTypeUtils.MAX_SHORT_BLOB_PROPERTY_LENGTH</CODE></A>.</TD>
203
+ </TR>
204
+ <TR BGCOLOR="white" CLASS="TableRowColor">
205
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Text.html" title="class in com.google.appengine.api.datastore">Text</A></B></TD>
206
+ <TD><code>Text</code> wraps around a string of unlimited size.</TD>
207
+ </TR>
208
+ </TABLE>
209
+ &nbsp;
210
+
211
+ <P>
212
+
213
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
214
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
215
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
216
+ <B>Enum Summary</B></FONT></TH>
217
+ </TR>
218
+ <TR BGCOLOR="white" CLASS="TableRowColor">
219
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore">ImplicitTransactionManagementPolicy</A></B></TD>
220
+ <TD>Describes the various policies the datastore can follow for implicit
221
+ transaction management.</TD>
222
+ </TR>
223
+ <TR BGCOLOR="white" CLASS="TableRowColor">
224
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Query.FilterOperator.html" title="enum in com.google.appengine.api.datastore">Query.FilterOperator</A></B></TD>
225
+ <TD>FilterOperator specifies what type of operation you want to apply
226
+ to your filter.</TD>
227
+ </TR>
228
+ <TR BGCOLOR="white" CLASS="TableRowColor">
229
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/Query.SortDirection.html" title="enum in com.google.appengine.api.datastore">Query.SortDirection</A></B></TD>
230
+ <TD><code>SortDirection</code> controls the order of a sort.</TD>
231
+ </TR>
232
+ </TABLE>
233
+ &nbsp;
234
+
235
+ <P>
236
+
237
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
238
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
239
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
240
+ <B>Exception Summary</B></FONT></TH>
241
+ </TR>
242
+ <TR BGCOLOR="white" CLASS="TableRowColor">
243
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore">DatastoreFailureException</A></B></TD>
244
+ <TD><code>DatastoreFailureException</code> is thrown when any unknown
245
+ error occurs while communicating with the data store.</TD>
246
+ </TR>
247
+ <TR BGCOLOR="white" CLASS="TableRowColor">
248
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreNeedIndexException.html" title="class in com.google.appengine.api.datastore">DatastoreNeedIndexException</A></B></TD>
249
+ <TD><code>DatastoreNeedIndexException</code> is thrown when no matching index was
250
+ found for a query requiring an index.</TD>
251
+ </TR>
252
+ <TR BGCOLOR="white" CLASS="TableRowColor">
253
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreTimeoutException.html" title="class in com.google.appengine.api.datastore">DatastoreTimeoutException</A></B></TD>
254
+ <TD><code>DatastoreTimeoutException</code> is thrown when a datastore operation
255
+ times out.</TD>
256
+ </TR>
257
+ <TR BGCOLOR="white" CLASS="TableRowColor">
258
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/EntityNotFoundException.html" title="class in com.google.appengine.api.datastore">EntityNotFoundException</A></B></TD>
259
+ <TD><code>EntityNotFoundException</code> is thrown when no <code>Entity</code>
260
+ with the specified <code>Key</code> could be found.</TD>
261
+ </TR>
262
+ <TR BGCOLOR="white" CLASS="TableRowColor">
263
+ <TD WIDTH="15%"><B><A HREF="../../../../../com/google/appengine/api/datastore/PreparedQuery.TooManyResultsException.html" title="class in com.google.appengine.api.datastore">PreparedQuery.TooManyResultsException</A></B></TD>
264
+ <TD>Indicates that too many results were found for
265
+ <A HREF="../../../../../com/google/appengine/api/datastore/PreparedQuery.html#asSingleEntity()"><CODE>PreparedQuery.asSingleEntity()</CODE></A>.</TD>
266
+ </TR>
267
+ </TABLE>
268
+ &nbsp;
269
+
270
+ <P>
271
+ <A NAME="package_description"><!-- --></A><H2>
272
+ Package com.google.appengine.api.datastore Description
273
+ </H2>
274
+
275
+ <P>
276
+ The datastore provides persistent storage for App Engine applications, used
277
+ either directly or via the provided JDO or JPA interfaces. It provides
278
+ redundant storage for fault-tolerance. More information is available in the
279
+ <a href="http://code.google.com/appengine/docs/java/datastore/">on-line
280
+ documentation</a>.
281
+ <p>
282
+ This package contains a low-level API to the datastore that is intended
283
+ primarily for framework authors. Applications authors should consider using
284
+ either the provided JDO or JPA interfaces to the datastore.
285
+
286
+ If using the datastore API directly, a common pattern of usage is:
287
+
288
+ <pre>
289
+ // Get a handle on the datastore itself
290
+ DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
291
+
292
+ // Lookup data by known key name
293
+ Entity userEntity = datastore.get(KeyFactory.createKey("UserInfo", email));
294
+
295
+ // Or perform a query
296
+ Query query = new Query("Task", userEntity);
297
+ query.addFilter("dueDate", Query.FilterOperator.LESS_THAN, today);
298
+ for (Entity taskEntity : datastore.prepare(query).asIterable()) {
299
+ if ("done".equals(taskEntity.getProperty("status"))) {
300
+ datastore.delete(taskEntity);
301
+ } else {
302
+ taskEntity.setProperty("status", "overdue");
303
+ datastore.put(taskEntity);
304
+ }
305
+ }
306
+ </pre>
307
+
308
+ This illustrates several basic points:
309
+ <ul>
310
+ <li> The actual datastore itself is accessed through a
311
+ <CODE>DatastoreService</CODE> object, produced from a
312
+ <CODE>DatastoreServiceFactory</CODE>.
313
+ <li> The unit of storage is the <CODE>Entity</CODE> object, which are of named
314
+ kinds ("UserInfo" and "Task" above).
315
+ <li> Entities have a <CODE>Key</CODE> value, which can be created by a <CODE>KeyFactory</CODE> to retrieve a specific known entity. If the key is not
316
+ readily determined, then <CODE>Query</CODE> objects can be used to retrieve
317
+ one Entity, multiple as a list, <CODE>Interable</CODE>, or <CODE>Iterator</CODE>,
318
+ or to retrive the count of matching entities.
319
+ <li> Entities have named properties, the values of which may be basic types
320
+ or collections of basic types. Richer objects, of course, may be
321
+ stored if serialized as byte arrays, although that may prevent
322
+ effective querying by those properties.
323
+ <li> Entities may be associated in a tree structure; the <CODE>Query</CODE> in
324
+ the snippet above searches only for Task entities associated with a
325
+ specific UserInfo entity, and then filters those for Tasks due before
326
+ today.
327
+ </ul>
328
+
329
+ <p>
330
+
331
+ In production, non-trivial queries cannot be performed until one or more
332
+ indexes have been built to ensure that the individual queries can be
333
+ processed efficiently. You can specify the set of indexes your application
334
+ requires in a <code>WEB-INF/datastore-indexes.xml</code> file, or they can be
335
+ generated automatically as you test your application in the Development
336
+ Server. If a query requires an index that cannot be found, a
337
+ <CODE>DatastoreNeedIndexException</CODE> will be thrown at runtime.
338
+
339
+ <p>
340
+
341
+ Although Google App Engine allows many versions of your application to be
342
+ accessible, there is only one datastore for your application, shared by
343
+ all versions. Similarly, the set of indexes is shared by all application
344
+ versions.
345
+ <P>
346
+
347
+ <P>
348
+ <DL>
349
+ </DL>
350
+ <HR>
351
+
352
+
353
+ <!-- ======= START OF BOTTOM NAVBAR ====== -->
354
+ <A NAME="navbar_bottom"><!-- --></A>
355
+ <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
356
+ <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
357
+ <TR>
358
+ <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
359
+ <A NAME="navbar_bottom_firstrow"><!-- --></A>
360
+ <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
361
+ <TR ALIGN="center" VALIGN="top">
362
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
363
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
364
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
365
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
366
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
367
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
368
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
369
+ </TR>
370
+ </TABLE>
371
+ </TD>
372
+ <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
373
+ </EM>
374
+ </TD>
375
+ </TR>
376
+
377
+ <TR>
378
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
379
+ &nbsp;PREV PACKAGE&nbsp;
380
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/images/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
381
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
382
+ <A HREF="../../../../../index.html?com/google/appengine/api/datastore/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
383
+ &nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
384
+ &nbsp;<SCRIPT type="text/javascript">
385
+ <!--
386
+ if(window==top) {
387
+ document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
388
+ }
389
+ //-->
390
+ </SCRIPT>
391
+ <NOSCRIPT>
392
+ <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
393
+ </NOSCRIPT>
394
+
395
+
396
+ </FONT></TD>
397
+ </TR>
398
+ </TABLE>
399
+ <A NAME="skip-navbar_bottom"></A>
400
+ <!-- ======== END OF BOTTOM NAVBAR ======= -->
401
+
402
+ <HR>
403
+
404
+ </BODY>
405
+ </HTML>