appengine-sdk 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
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,245 @@
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:56 CDT 2009 -->
6
+ <TITLE>
7
+ DatastoreNeedIndexException
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="DatastoreNeedIndexException";
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/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore"><B>PREV CLASS</B></A>&nbsp;
58
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html" title="interface in com.google.appengine.api.datastore"><B>NEXT CLASS</B></A></FONT></TD>
59
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
60
+ <A HREF="../../../../../index.html?com/google/appengine/api/datastore/DatastoreNeedIndexException.html" target="_top"><B>FRAMES</B></A> &nbsp;
61
+ &nbsp;<A HREF="DatastoreNeedIndexException.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;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#methods_inherited_from_class_java.lang.Throwable">METHOD</A></FONT></TD>
79
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
80
+ DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;METHOD</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
+ Class DatastoreNeedIndexException</H2>
93
+ <PRE>
94
+ java.lang.Object
95
+ <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by ">java.lang.Throwable
96
+ <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by ">java.lang.Exception
97
+ <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by ">java.lang.RuntimeException
98
+ <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>com.google.appengine.api.datastore.DatastoreNeedIndexException</B>
99
+ </PRE>
100
+ <DL>
101
+ <DT><B>All Implemented Interfaces:</B> <DD>java.io.Serializable</DD>
102
+ </DL>
103
+ <HR>
104
+ <DL>
105
+ <DT><PRE>public class <B>DatastoreNeedIndexException</B><DT>extends java.lang.RuntimeException</DL>
106
+ </PRE>
107
+
108
+ <P>
109
+ <code>DatastoreNeedIndexException</code> is thrown when no matching index was
110
+ found for a query requiring an index. Check the Indexes page in the Admin
111
+ Console and your datastore-indexes.xml file.
112
+ <P>
113
+
114
+ <P>
115
+ <DL>
116
+ <DT><B>See Also:</B><DD><A HREF="../../../../../serialized-form.html#com.google.appengine.api.datastore.DatastoreNeedIndexException">Serialized Form</A></DL>
117
+ <HR>
118
+
119
+ <P>
120
+
121
+ <!-- ======== CONSTRUCTOR SUMMARY ======== -->
122
+
123
+ <A NAME="constructor_summary"><!-- --></A>
124
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
125
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
126
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
127
+ <B>Constructor Summary</B></FONT></TH>
128
+ </TR>
129
+ <TR BGCOLOR="white" CLASS="TableRowColor">
130
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreNeedIndexException.html#DatastoreNeedIndexException(java.lang.String)">DatastoreNeedIndexException</A></B>(java.lang.String&nbsp;message)</CODE>
131
+
132
+ <BR>
133
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
134
+ </TR>
135
+ </TABLE>
136
+ &nbsp;
137
+ <!-- ========== METHOD SUMMARY =========== -->
138
+
139
+ <A NAME="method_summary"><!-- --></A>
140
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
141
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
142
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
143
+ <B>Method Summary</B></FONT></TH>
144
+ </TR>
145
+ </TABLE>
146
+ &nbsp;<A NAME="methods_inherited_from_class_java.lang.Throwable"><!-- --></A>
147
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
148
+ <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
149
+ <TH ALIGN="left"><B>Methods inherited from class java.lang.Throwable</B></TH>
150
+ </TR>
151
+ <TR BGCOLOR="white" CLASS="TableRowColor">
152
+ <TD><CODE>fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString</CODE></TD>
153
+ </TR>
154
+ </TABLE>
155
+ &nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
156
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
157
+ <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
158
+ <TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
159
+ </TR>
160
+ <TR BGCOLOR="white" CLASS="TableRowColor">
161
+ <TD><CODE>equals, getClass, hashCode, notify, notifyAll, wait, wait, wait</CODE></TD>
162
+ </TR>
163
+ </TABLE>
164
+ &nbsp;
165
+ <P>
166
+
167
+ <!-- ========= CONSTRUCTOR DETAIL ======== -->
168
+
169
+ <A NAME="constructor_detail"><!-- --></A>
170
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
171
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
172
+ <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
173
+ <B>Constructor Detail</B></FONT></TH>
174
+ </TR>
175
+ </TABLE>
176
+
177
+ <A NAME="DatastoreNeedIndexException(java.lang.String)"><!-- --></A><H3>
178
+ DatastoreNeedIndexException</H3>
179
+ <PRE>
180
+ public <B>DatastoreNeedIndexException</B>(java.lang.String&nbsp;message)</PRE>
181
+ <DL>
182
+ </DL>
183
+ <!-- ========= END OF CLASS DATA ========= -->
184
+ <HR>
185
+
186
+
187
+ <!-- ======= START OF BOTTOM NAVBAR ====== -->
188
+ <A NAME="navbar_bottom"><!-- --></A>
189
+ <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
190
+ <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
191
+ <TR>
192
+ <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
193
+ <A NAME="navbar_bottom_firstrow"><!-- --></A>
194
+ <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
195
+ <TR ALIGN="center" VALIGN="top">
196
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
197
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
198
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
199
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
200
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
201
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
202
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
203
+ </TR>
204
+ </TABLE>
205
+ </TD>
206
+ <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
207
+ </EM>
208
+ </TD>
209
+ </TR>
210
+
211
+ <TR>
212
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
213
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore"><B>PREV CLASS</B></A>&nbsp;
214
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html" title="interface in com.google.appengine.api.datastore"><B>NEXT CLASS</B></A></FONT></TD>
215
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
216
+ <A HREF="../../../../../index.html?com/google/appengine/api/datastore/DatastoreNeedIndexException.html" target="_top"><B>FRAMES</B></A> &nbsp;
217
+ &nbsp;<A HREF="DatastoreNeedIndexException.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
218
+ &nbsp;<SCRIPT type="text/javascript">
219
+ <!--
220
+ if(window==top) {
221
+ document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
222
+ }
223
+ //-->
224
+ </SCRIPT>
225
+ <NOSCRIPT>
226
+ <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
227
+ </NOSCRIPT>
228
+
229
+
230
+ </FONT></TD>
231
+ </TR>
232
+ <TR>
233
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
234
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#methods_inherited_from_class_java.lang.Throwable">METHOD</A></FONT></TD>
235
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
236
+ DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;METHOD</FONT></TD>
237
+ </TR>
238
+ </TABLE>
239
+ <A NAME="skip-navbar_bottom"></A>
240
+ <!-- ======== END OF BOTTOM NAVBAR ======= -->
241
+
242
+ <HR>
243
+
244
+ </BODY>
245
+ </HTML>
@@ -0,0 +1,787 @@
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:56 CDT 2009 -->
6
+ <TITLE>
7
+ DatastoreService
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="DatastoreService";
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/DatastoreNeedIndexException.html" title="class in com.google.appengine.api.datastore"><B>PREV CLASS</B></A>&nbsp;
58
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/DatastoreServiceFactory.html" title="class in com.google.appengine.api.datastore"><B>NEXT CLASS</B></A></FONT></TD>
59
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
60
+ <A HREF="../../../../../index.html?com/google/appengine/api/datastore/DatastoreService.html" target="_top"><B>FRAMES</B></A> &nbsp;
61
+ &nbsp;<A HREF="DatastoreService.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 DatastoreService</H2>
93
+ <HR>
94
+ <DL>
95
+ <DT><PRE>public interface <B>DatastoreService</B></DL>
96
+ </PRE>
97
+
98
+ <P>
99
+ The <code>DatastoreService</code> provides access to a schema-less data
100
+ storage system. The fundamental unit of data in this system is the
101
+ <code>Entity</code>, which has an immutable identity (represented by a
102
+ <code>Key</code>) and zero of more mutable properties. <code>Entity</code>
103
+ objects can be created, updated, deleted, retrieved by identifier,
104
+ and queried via a combination of properties.
105
+
106
+ The <code>DatastoreService</code> can be used transactionally and supports the
107
+ notion of a "current" transaction. A current transaction is established by
108
+ calling <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#beginTransaction()"><CODE>beginTransaction()</CODE></A>. The transaction returned by this method
109
+ ceases to be current when an attempt is made to commit or rollback or when
110
+ another call is made to <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#beginTransaction()"><CODE>beginTransaction()</CODE></A>. A transaction can only
111
+ be current within the Thread that created it.
112
+
113
+ The various overloads of put, get, and delete all support transactions.
114
+ Users of this class have the choice of explicitly passing a (potentially
115
+ <code>null</code>) <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A> to these methods or relying on the
116
+ behavior governed by the <A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore"><CODE>ImplicitTransactionManagementPolicy</CODE></A>.
117
+ If a user explicitly provides a <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A> it is up to the user to
118
+ call <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#commit()"><CODE>Transaction.commit()</CODE></A> or <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#rollback()"><CODE>Transaction.rollback()</CODE></A> at the
119
+ proper time. If a user relies on implicit transaction management and the
120
+ installed policy creates a transaction, that transaction will be committed
121
+ (in the case of a success) or rolled back (in the case of a failure) before
122
+ the operation returns to the user. The methods that manage
123
+ transactions according to <A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore"><CODE>ImplicitTransactionManagementPolicy</CODE></A> are:
124
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(com.google.appengine.api.datastore.Key...)"><CODE>delete(Key[])</CODE></A>, <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(java.lang.Iterable)"><CODE>delete(Iterable)</CODE></A>, <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#get(com.google.appengine.api.datastore.Key)"><CODE>get(Key)</CODE></A>,
125
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#get(java.lang.Iterable)"><CODE>get(Iterable)</CODE></A>, <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(com.google.appengine.api.datastore.Entity)"><CODE>put(Entity)</CODE></A>, and <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(java.lang.Iterable)"><CODE>put(Iterable)</CODE></A>.
126
+
127
+ The overload of prepare that takes a <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A> parameter
128
+ behaves the same as the overloads of put, get, and delete that take a
129
+ <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A> parameter. However, the overload of prepare that does
130
+ not take a <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A> parameter, unlike put, get, and delete, does
131
+ not use an existing <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A> if one is already running and does
132
+ not consult the <A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore"><CODE>ImplicitTransactionManagementPolicy</CODE></A> if one is not
133
+ already running.
134
+ <P>
135
+
136
+ <P>
137
+ <HR>
138
+
139
+ <P>
140
+
141
+ <!-- ========== METHOD SUMMARY =========== -->
142
+
143
+ <A NAME="method_summary"><!-- --></A>
144
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
145
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
146
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
147
+ <B>Method Summary</B></FONT></TH>
148
+ </TR>
149
+ <TR BGCOLOR="white" CLASS="TableRowColor">
150
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
151
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A></CODE></FONT></TD>
152
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#beginTransaction()">beginTransaction</A></B>()</CODE>
153
+
154
+ <BR>
155
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Begins a transaction against the datastore.</TD>
156
+ </TR>
157
+ <TR BGCOLOR="white" CLASS="TableRowColor">
158
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
159
+ <CODE>&nbsp;void</CODE></FONT></TD>
160
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(java.lang.Iterable)">delete</A></B>(java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;&nbsp;keys)</CODE>
161
+
162
+ <BR>
163
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Equivalent to <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(com.google.appengine.api.datastore.Key...)"><CODE>delete(Key...)</CODE></A>.</TD>
164
+ </TR>
165
+ <TR BGCOLOR="white" CLASS="TableRowColor">
166
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
167
+ <CODE>&nbsp;void</CODE></FONT></TD>
168
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(com.google.appengine.api.datastore.Key...)">delete</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>...&nbsp;keys)</CODE>
169
+
170
+ <BR>
171
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Deletes the <code>Entity entities</code> specified by <code>keys</code>.</TD>
172
+ </TR>
173
+ <TR BGCOLOR="white" CLASS="TableRowColor">
174
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
175
+ <CODE>&nbsp;void</CODE></FONT></TD>
176
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(com.google.appengine.api.datastore.Transaction, java.lang.Iterable)">delete</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
177
+ java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;&nbsp;keys)</CODE>
178
+
179
+ <BR>
180
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(java.lang.Iterable)"><CODE>delete(Iterable)</CODE></A>, but executes within
181
+ the provided transaction.</TD>
182
+ </TR>
183
+ <TR BGCOLOR="white" CLASS="TableRowColor">
184
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
185
+ <CODE>&nbsp;void</CODE></FONT></TD>
186
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(com.google.appengine.api.datastore.Transaction, com.google.appengine.api.datastore.Key...)">delete</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
187
+ <A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>...&nbsp;keys)</CODE>
188
+
189
+ <BR>
190
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(com.google.appengine.api.datastore.Key...)"><CODE>delete(Key[])</CODE></A>, but executes within
191
+ the provided transaction.</TD>
192
+ </TR>
193
+ <TR BGCOLOR="white" CLASS="TableRowColor">
194
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
195
+ <CODE>&nbsp;java.util.Map&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>,<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&gt;</CODE></FONT></TD>
196
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#get(java.lang.Iterable)">get</A></B>(java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;&nbsp;keys)</CODE>
197
+
198
+ <BR>
199
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Retrieves the set of <A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore"><CODE>Entities</CODE></A> matching <code>keys</code>.</TD>
200
+ </TR>
201
+ <TR BGCOLOR="white" CLASS="TableRowColor">
202
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
203
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A></CODE></FONT></TD>
204
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#get(com.google.appengine.api.datastore.Key)">get</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&nbsp;key)</CODE>
205
+
206
+ <BR>
207
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Retrieves the <code>Entity</code> with the specified <code>Key</code>.</TD>
208
+ </TR>
209
+ <TR BGCOLOR="white" CLASS="TableRowColor">
210
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
211
+ <CODE>&nbsp;java.util.Map&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>,<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&gt;</CODE></FONT></TD>
212
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#get(com.google.appengine.api.datastore.Transaction, java.lang.Iterable)">get</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
213
+ java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;&nbsp;keys)</CODE>
214
+
215
+ <BR>
216
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exhibits the same behavior as <CODE>#get(Iterable<Key>)</CODE>, but executes within
217
+ the provided transaction.</TD>
218
+ </TR>
219
+ <TR BGCOLOR="white" CLASS="TableRowColor">
220
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
221
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A></CODE></FONT></TD>
222
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#get(com.google.appengine.api.datastore.Transaction, com.google.appengine.api.datastore.Key)">get</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
223
+ <A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&nbsp;key)</CODE>
224
+
225
+ <BR>
226
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#get(com.google.appengine.api.datastore.Key)"><CODE>get(Key)</CODE></A>, but executes within
227
+ the provided transaction.</TD>
228
+ </TR>
229
+ <TR BGCOLOR="white" CLASS="TableRowColor">
230
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
231
+ <CODE>&nbsp;java.util.Collection&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&gt;</CODE></FONT></TD>
232
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#getActiveTransactions()">getActiveTransactions</A></B>()</CODE>
233
+
234
+ <BR>
235
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
236
+ </TR>
237
+ <TR BGCOLOR="white" CLASS="TableRowColor">
238
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
239
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A></CODE></FONT></TD>
240
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#getCurrentTransaction()">getCurrentTransaction</A></B>()</CODE>
241
+
242
+ <BR>
243
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the current transaction for this thread, or throws an exception if
244
+ there is no current transaction.</TD>
245
+ </TR>
246
+ <TR BGCOLOR="white" CLASS="TableRowColor">
247
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
248
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A></CODE></FONT></TD>
249
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#getCurrentTransaction(com.google.appengine.api.datastore.Transaction)">getCurrentTransaction</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;returnedIfNoTxn)</CODE>
250
+
251
+ <BR>
252
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the current transaction for this thread, or returns the parameter
253
+ if there is no current transaction.</TD>
254
+ </TR>
255
+ <TR BGCOLOR="white" CLASS="TableRowColor">
256
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
257
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/PreparedQuery.html" title="interface in com.google.appengine.api.datastore">PreparedQuery</A></CODE></FONT></TD>
258
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#prepare(com.google.appengine.api.datastore.Query)">prepare</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Query.html" title="class in com.google.appengine.api.datastore">Query</A>&nbsp;query)</CODE>
259
+
260
+ <BR>
261
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prepares a query for execution.</TD>
262
+ </TR>
263
+ <TR BGCOLOR="white" CLASS="TableRowColor">
264
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
265
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/PreparedQuery.html" title="interface in com.google.appengine.api.datastore">PreparedQuery</A></CODE></FONT></TD>
266
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#prepare(com.google.appengine.api.datastore.Transaction, com.google.appengine.api.datastore.Query)">prepare</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
267
+ <A HREF="../../../../../com/google/appengine/api/datastore/Query.html" title="class in com.google.appengine.api.datastore">Query</A>&nbsp;query)</CODE>
268
+
269
+ <BR>
270
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#prepare(com.google.appengine.api.datastore.Query)"><CODE>prepare(Query)</CODE></A>, but executes within
271
+ the provided transaction.</TD>
272
+ </TR>
273
+ <TR BGCOLOR="white" CLASS="TableRowColor">
274
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
275
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A></CODE></FONT></TD>
276
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(com.google.appengine.api.datastore.Entity)">put</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&nbsp;entity)</CODE>
277
+
278
+ <BR>
279
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the specified <code>Entity</code> does not yet exist in the data
280
+ store, create it and assign its <code>Key</code>.</TD>
281
+ </TR>
282
+ <TR BGCOLOR="white" CLASS="TableRowColor">
283
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
284
+ <CODE>&nbsp;java.util.List&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;</CODE></FONT></TD>
285
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(java.lang.Iterable)">put</A></B>(java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&gt;&nbsp;entities)</CODE>
286
+
287
+ <BR>
288
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Performs a batch <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(com.google.appengine.api.datastore.Entity)"><CODE>put</CODE></A> of all <code>entities</code>.</TD>
289
+ </TR>
290
+ <TR BGCOLOR="white" CLASS="TableRowColor">
291
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
292
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A></CODE></FONT></TD>
293
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(com.google.appengine.api.datastore.Transaction, com.google.appengine.api.datastore.Entity)">put</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
294
+ <A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&nbsp;entity)</CODE>
295
+
296
+ <BR>
297
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(com.google.appengine.api.datastore.Entity)"><CODE>put(Entity)</CODE></A>, but executes within
298
+ the provided transaction.</TD>
299
+ </TR>
300
+ <TR BGCOLOR="white" CLASS="TableRowColor">
301
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
302
+ <CODE>&nbsp;java.util.List&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;</CODE></FONT></TD>
303
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(com.google.appengine.api.datastore.Transaction, java.lang.Iterable)">put</A></B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
304
+ java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&gt;&nbsp;entities)</CODE>
305
+
306
+ <BR>
307
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Exhibits the same behavior as <CODE>#put(Iterable<Entity>)</CODE>, but executes within
308
+ the provided transaction.</TD>
309
+ </TR>
310
+ </TABLE>
311
+ &nbsp;
312
+ <P>
313
+
314
+ <!-- ============ METHOD DETAIL ========== -->
315
+
316
+ <A NAME="method_detail"><!-- --></A>
317
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
318
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
319
+ <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
320
+ <B>Method Detail</B></FONT></TH>
321
+ </TR>
322
+ </TABLE>
323
+
324
+ <A NAME="get(com.google.appengine.api.datastore.Key)"><!-- --></A><H3>
325
+ get</H3>
326
+ <PRE>
327
+ <A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A> <B>get</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&nbsp;key)
328
+ throws <A HREF="../../../../../com/google/appengine/api/datastore/EntityNotFoundException.html" title="class in com.google.appengine.api.datastore">EntityNotFoundException</A></PRE>
329
+ <DL>
330
+ <DD>Retrieves the <code>Entity</code> with the specified <code>Key</code>.
331
+
332
+ If there is a current transaction, this operation will execute within
333
+ that transaction. In this case it is up to the caller to commit
334
+ or rollback. If there is no current transaction, the behavior of this
335
+ method with respect to transactions will be determined by the
336
+ <A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore"><CODE>ImplicitTransactionManagementPolicy</CODE></A> available on the
337
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreConfig.html" title="interface in com.google.appengine.api.datastore"><CODE>DatastoreConfig</CODE></A>.
338
+ <P>
339
+ <DD><DL>
340
+
341
+ <DT><B>Throws:</B>
342
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/datastore/EntityNotFoundException.html" title="class in com.google.appengine.api.datastore">EntityNotFoundException</A></CODE> - If the specified entity could not be found.
343
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - If the specified key is invalid.
344
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore">DatastoreFailureException</A></CODE> - If any other datastore error occurs.</DL>
345
+ </DD>
346
+ </DL>
347
+ <HR>
348
+
349
+ <A NAME="get(com.google.appengine.api.datastore.Transaction, com.google.appengine.api.datastore.Key)"><!-- --></A><H3>
350
+ get</H3>
351
+ <PRE>
352
+ <A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A> <B>get</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
353
+ <A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&nbsp;key)
354
+ throws <A HREF="../../../../../com/google/appengine/api/datastore/EntityNotFoundException.html" title="class in com.google.appengine.api.datastore">EntityNotFoundException</A></PRE>
355
+ <DL>
356
+ <DD>Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#get(com.google.appengine.api.datastore.Key)"><CODE>get(Key)</CODE></A>, but executes within
357
+ the provided transaction. It is up to the caller to commit or
358
+ rollback. Transaction can be null.
359
+ <P>
360
+ <DD><DL>
361
+
362
+ <DT><B>Throws:</B>
363
+ <DD><CODE>java.lang.IllegalStateException</CODE> - If <code>txn</code> is not null and not
364
+ active.
365
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/datastore/EntityNotFoundException.html" title="class in com.google.appengine.api.datastore">EntityNotFoundException</A></CODE></DL>
366
+ </DD>
367
+ </DL>
368
+ <HR>
369
+
370
+ <A NAME="get(java.lang.Iterable)"><!-- --></A><H3>
371
+ get</H3>
372
+ <PRE>
373
+ java.util.Map&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>,<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&gt; <B>get</B>(java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;&nbsp;keys)</PRE>
374
+ <DL>
375
+ <DD>Retrieves the set of <A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore"><CODE>Entities</CODE></A> matching <code>keys</code>.
376
+ The result <code>Map</code> will only contain <code>Keys</code> for which
377
+ <code>Entities</code> could be found.
378
+
379
+ If there is a current transaction, this operation will execute within
380
+ that transaction. In this case it is up to the caller to commit
381
+ or rollback. If there is no current transaction, the behavior of this
382
+ method with respect to transactions will be determined by the
383
+ <A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore"><CODE>ImplicitTransactionManagementPolicy</CODE></A> available on the
384
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreConfig.html" title="interface in com.google.appengine.api.datastore"><CODE>DatastoreConfig</CODE></A>.
385
+ <P>
386
+ <DD><DL>
387
+
388
+ <DT><B>Throws:</B>
389
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - If any <code>Key</code> in keys is invalid.
390
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore">DatastoreFailureException</A></CODE> - If any other datastore error occurs.</DL>
391
+ </DD>
392
+ </DL>
393
+ <HR>
394
+
395
+ <A NAME="get(com.google.appengine.api.datastore.Transaction, java.lang.Iterable)"><!-- --></A><H3>
396
+ get</H3>
397
+ <PRE>
398
+ java.util.Map&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>,<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&gt; <B>get</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
399
+ java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;&nbsp;keys)</PRE>
400
+ <DL>
401
+ <DD>Exhibits the same behavior as <CODE>#get(Iterable<Key>)</CODE>, but executes within
402
+ the provided transaction. It is up to the caller to commit or
403
+ rollback. Transaction can be null.
404
+ <P>
405
+ <DD><DL>
406
+
407
+ <DT><B>Throws:</B>
408
+ <DD><CODE>java.lang.IllegalStateException</CODE> - If <code>txn</code> is not null and not
409
+ active.</DL>
410
+ </DD>
411
+ </DL>
412
+ <HR>
413
+
414
+ <A NAME="put(com.google.appengine.api.datastore.Entity)"><!-- --></A><H3>
415
+ put</H3>
416
+ <PRE>
417
+ <A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A> <B>put</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&nbsp;entity)</PRE>
418
+ <DL>
419
+ <DD>If the specified <code>Entity</code> does not yet exist in the data
420
+ store, create it and assign its <code>Key</code>. If the specified
421
+ <code>Entity</code> already exists in the data store, save the new
422
+ version.
423
+
424
+ <p>The <code>Key</code> is returned, and is also returned by future calls
425
+ to <code>entity.getKey()</code>.
426
+
427
+ If there is a current transaction, this operation will execute within
428
+ that transaction. In this case it is up to the caller to commit
429
+ or rollback. If there is no current transaction, the behavior of this
430
+ method with respect to transactions will be determined by the
431
+ <A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore"><CODE>ImplicitTransactionManagementPolicy</CODE></A> available on the
432
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreConfig.html" title="interface in com.google.appengine.api.datastore"><CODE>DatastoreConfig</CODE></A>.
433
+ <P>
434
+ <DD><DL>
435
+
436
+ <DT><B>Throws:</B>
437
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - If the specified entity was incomplete.
438
+ <DD><CODE>java.util.ConcurrentModificationException</CODE> - If this entity was
439
+ modified concurrently in another transaction.
440
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore">DatastoreFailureException</A></CODE> - If any other datastore error occurs.</DL>
441
+ </DD>
442
+ </DL>
443
+ <HR>
444
+
445
+ <A NAME="put(com.google.appengine.api.datastore.Transaction, com.google.appengine.api.datastore.Entity)"><!-- --></A><H3>
446
+ put</H3>
447
+ <PRE>
448
+ <A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A> <B>put</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
449
+ <A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&nbsp;entity)</PRE>
450
+ <DL>
451
+ <DD>Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(com.google.appengine.api.datastore.Entity)"><CODE>put(Entity)</CODE></A>, but executes within
452
+ the provided transaction. It is up to the caller to commit or
453
+ rollback. Transaction can be null.
454
+ <P>
455
+ <DD><DL>
456
+
457
+ <DT><B>Throws:</B>
458
+ <DD><CODE>java.lang.IllegalStateException</CODE> - If <code>txn</code> is not null and not
459
+ active.</DL>
460
+ </DD>
461
+ </DL>
462
+ <HR>
463
+
464
+ <A NAME="put(java.lang.Iterable)"><!-- --></A><H3>
465
+ put</H3>
466
+ <PRE>
467
+ java.util.List&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt; <B>put</B>(java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&gt;&nbsp;entities)</PRE>
468
+ <DL>
469
+ <DD>Performs a batch <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#put(com.google.appengine.api.datastore.Entity)"><CODE>put</CODE></A> of all <code>entities</code>.
470
+
471
+ If there is a current transaction, this operation will execute within
472
+ that transaction. In this case it is up to the caller to commit
473
+ or rollback. If there is no current transaction, the behavior of this
474
+ method with respect to transactions will be determined by the
475
+ <A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore"><CODE>ImplicitTransactionManagementPolicy</CODE></A> available on the
476
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreConfig.html" title="interface in com.google.appengine.api.datastore"><CODE>DatastoreConfig</CODE></A>.
477
+ <P>
478
+ <DD><DL>
479
+
480
+ <DT><B>Returns:</B><DD>The <code>Key</code>s that were assigned to the entities that were put.
481
+ If the <code>Iterable</code> that was provided as an argument has a stable
482
+ iteration order the <code>Key</code>s in the <code>List</code> we return are in
483
+ that same order. If the <code>Iterable</code> that was provided as an argument
484
+ does not have a stable iteration order the order of the <code>Key</code>s in
485
+ the <code>List</code> we return is undefined.
486
+ <DT><B>Throws:</B>
487
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - If any entity is incomplete.
488
+ <DD><CODE>java.util.ConcurrentModificationException</CODE> - If any entity was
489
+ modified concurrently in another transaction.
490
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore">DatastoreFailureException</A></CODE> - If any other datastore error occurs.</DL>
491
+ </DD>
492
+ </DL>
493
+ <HR>
494
+
495
+ <A NAME="put(com.google.appengine.api.datastore.Transaction, java.lang.Iterable)"><!-- --></A><H3>
496
+ put</H3>
497
+ <PRE>
498
+ java.util.List&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt; <B>put</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
499
+ java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Entity.html" title="class in com.google.appengine.api.datastore">Entity</A>&gt;&nbsp;entities)</PRE>
500
+ <DL>
501
+ <DD>Exhibits the same behavior as <CODE>#put(Iterable<Entity>)</CODE>, but executes within
502
+ the provided transaction. It is up to the caller to commit or
503
+ rollback. Transaction can be null.
504
+ <P>
505
+ <DD><DL>
506
+
507
+ <DT><B>Returns:</B><DD>The <code>Key</code>s that were assigned to the entities that were put.
508
+ If the <code>Iterable</code> that was provided as an argument has a stable
509
+ iteration order the <code>Key</code>s in the <code>List</code> we return are in
510
+ that same order. If the <code>Iterable</code> that was provided as an argument
511
+ does not have a stable iteration order the order of the <code>Key</code>s in
512
+ the <code>List</code> we return is undefined.
513
+ <DT><B>Throws:</B>
514
+ <DD><CODE>java.lang.IllegalStateException</CODE> - If <code>txn</code> is not null and not</DL>
515
+ </DD>
516
+ </DL>
517
+ <HR>
518
+
519
+ <A NAME="delete(com.google.appengine.api.datastore.Key...)"><!-- --></A><H3>
520
+ delete</H3>
521
+ <PRE>
522
+ void <B>delete</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>...&nbsp;keys)</PRE>
523
+ <DL>
524
+ <DD>Deletes the <code>Entity entities</code> specified by <code>keys</code>.
525
+
526
+ If there is a current transaction, this operation will execute within
527
+ that transaction. In this case it is up to the caller to commit
528
+ or rollback. If there is no current transaction, the behavior of this
529
+ method with respect to transactions will be determined by the
530
+ <A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore"><CODE>ImplicitTransactionManagementPolicy</CODE></A> available on the
531
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreConfig.html" title="interface in com.google.appengine.api.datastore"><CODE>DatastoreConfig</CODE></A>.
532
+ <P>
533
+ <DD><DL>
534
+
535
+ <DT><B>Throws:</B>
536
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - If the specified key was invalid.
537
+ <DD><CODE>java.util.ConcurrentModificationException</CODE> - If this entity was
538
+ modified concurrently modified in another transaction.
539
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreFailureException.html" title="class in com.google.appengine.api.datastore">DatastoreFailureException</A></CODE> - If any other datastore error occurs.</DL>
540
+ </DD>
541
+ </DL>
542
+ <HR>
543
+
544
+ <A NAME="delete(com.google.appengine.api.datastore.Transaction, com.google.appengine.api.datastore.Key...)"><!-- --></A><H3>
545
+ delete</H3>
546
+ <PRE>
547
+ void <B>delete</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
548
+ <A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>...&nbsp;keys)</PRE>
549
+ <DL>
550
+ <DD>Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(com.google.appengine.api.datastore.Key...)"><CODE>delete(Key[])</CODE></A>, but executes within
551
+ the provided transaction. It is up to the caller to commit or
552
+ rollback. Transaction can be null.
553
+ <P>
554
+ <DD><DL>
555
+
556
+ <DT><B>Throws:</B>
557
+ <DD><CODE>java.lang.IllegalStateException</CODE> - If <code>txn</code> is not null and not</DL>
558
+ </DD>
559
+ </DL>
560
+ <HR>
561
+
562
+ <A NAME="delete(java.lang.Iterable)"><!-- --></A><H3>
563
+ delete</H3>
564
+ <PRE>
565
+ void <B>delete</B>(java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;&nbsp;keys)</PRE>
566
+ <DL>
567
+ <DD>Equivalent to <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(com.google.appengine.api.datastore.Key...)"><CODE>delete(Key...)</CODE></A>.
568
+ <P>
569
+ <DD><DL>
570
+ </DL>
571
+ </DD>
572
+ </DL>
573
+ <HR>
574
+
575
+ <A NAME="delete(com.google.appengine.api.datastore.Transaction, java.lang.Iterable)"><!-- --></A><H3>
576
+ delete</H3>
577
+ <PRE>
578
+ void <B>delete</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
579
+ java.lang.Iterable&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Key.html" title="class in com.google.appengine.api.datastore">Key</A>&gt;&nbsp;keys)</PRE>
580
+ <DL>
581
+ <DD>Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#delete(java.lang.Iterable)"><CODE>delete(Iterable)</CODE></A>, but executes within
582
+ the provided transaction. It is up to the caller to commit or
583
+ rollback. Transaction can be null.
584
+ <P>
585
+ <DD><DL>
586
+
587
+ <DT><B>Throws:</B>
588
+ <DD><CODE>java.lang.IllegalStateException</CODE> - If <code>txn</code> is not null and not</DL>
589
+ </DD>
590
+ </DL>
591
+ <HR>
592
+
593
+ <A NAME="prepare(com.google.appengine.api.datastore.Query)"><!-- --></A><H3>
594
+ prepare</H3>
595
+ <PRE>
596
+ <A HREF="../../../../../com/google/appengine/api/datastore/PreparedQuery.html" title="interface in com.google.appengine.api.datastore">PreparedQuery</A> <B>prepare</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Query.html" title="class in com.google.appengine.api.datastore">Query</A>&nbsp;query)</PRE>
597
+ <DL>
598
+ <DD>Prepares a query for execution.
599
+ <p>
600
+ This method returns a <A HREF="../../../../../com/google/appengine/api/datastore/PreparedQuery.html" title="interface in com.google.appengine.api.datastore"><CODE>PreparedQuery</CODE></A> which can be used
601
+ to execute and retrieve results from the datastore for <code>query</code>.
602
+
603
+ This operation will not execute in a transaction even if there is a current
604
+ transaction and it is an ancestor query. This operation also ignores the
605
+ <A HREF="../../../../../com/google/appengine/api/datastore/ImplicitTransactionManagementPolicy.html" title="enum in com.google.appengine.api.datastore"><CODE>ImplicitTransactionManagementPolicy</CODE></A>. If you are preparing an
606
+ ancestory query and you want it to execute in a transaction, use
607
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#prepare(com.google.appengine.api.datastore.Transaction, com.google.appengine.api.datastore.Query)"><CODE>prepare(Transaction, Query)</CODE></A>.
608
+ <P>
609
+ <DD><DL>
610
+ <DT><B>Parameters:</B><DD><CODE>query</CODE> - a not <code>null Query</code>.
611
+ <DT><B>Returns:</B><DD>a not <code>null PreparedQuery</code>.</DL>
612
+ </DD>
613
+ </DL>
614
+ <HR>
615
+
616
+ <A NAME="prepare(com.google.appengine.api.datastore.Transaction, com.google.appengine.api.datastore.Query)"><!-- --></A><H3>
617
+ prepare</H3>
618
+ <PRE>
619
+ <A HREF="../../../../../com/google/appengine/api/datastore/PreparedQuery.html" title="interface in com.google.appengine.api.datastore">PreparedQuery</A> <B>prepare</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;txn,
620
+ <A HREF="../../../../../com/google/appengine/api/datastore/Query.html" title="class in com.google.appengine.api.datastore">Query</A>&nbsp;query)</PRE>
621
+ <DL>
622
+ <DD>Exhibits the same behavior as <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#prepare(com.google.appengine.api.datastore.Query)"><CODE>prepare(Query)</CODE></A>, but executes within
623
+ the provided transaction. It is up to the caller to commit or
624
+ rollback. Transaction can be null.
625
+ <P>
626
+ <DD><DL>
627
+
628
+ <DT><B>Throws:</B>
629
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - If txn is not null and query is not an
630
+ ancestor query
631
+ <DD><CODE>java.lang.IllegalStateException</CODE> - If txn is not null and the txn is not active</DL>
632
+ </DD>
633
+ </DL>
634
+ <HR>
635
+
636
+ <A NAME="beginTransaction()"><!-- --></A><H3>
637
+ beginTransaction</H3>
638
+ <PRE>
639
+ <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A> <B>beginTransaction</B>()</PRE>
640
+ <DL>
641
+ <DD>Begins a transaction against the datastore. Callers are responsible
642
+ for explicitly calling <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#commit()"><CODE>Transaction.commit()</CODE></A> or
643
+ <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#rollback()"><CODE>Transaction.rollback()</CODE></A> when they no longer need the
644
+ <code>Transaction</code>.
645
+
646
+ The <code>Transaction</code> returned by this call will be considered the
647
+ current transaction and will be returned by subsequent, same-thread calls
648
+ to <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#getCurrentTransaction()"><CODE>getCurrentTransaction()</CODE></A> and
649
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#getCurrentTransaction(com.google.appengine.api.datastore.Transaction)"><CODE>getCurrentTransaction(Transaction)</CODE></A> until one of the following happens:
650
+ 1) <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#beginTransaction()"><CODE>beginTransaction()</CODE></A> is invoked from the same thread. In this
651
+ case <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#getCurrentTransaction()"><CODE>getCurrentTransaction()</CODE></A> and
652
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#getCurrentTransaction(com.google.appengine.api.datastore.Transaction)"><CODE>getCurrentTransaction(Transaction)</CODE></A> will return the result of the
653
+ more recent call to <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#beginTransaction()"><CODE>beginTransaction()</CODE></A>.
654
+ 2) <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#commit()"><CODE>Transaction.commit()</CODE></A> is invoked on the <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A>
655
+ returned by this method. Whether or not the commit returns successfully,
656
+ the <code>Transaction</code> will no longer be the current transaction.
657
+ 3) <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html#rollback()"><CODE>Transaction.rollback()</CODE></A> ()} is invoked on the
658
+ <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A> returned by this method. Whether or not the rollback
659
+ returns successfully, the <code>Transaction</code> will no longer be the
660
+ current transaction.
661
+ <P>
662
+ <DD><DL>
663
+
664
+ <DT><B>Returns:</B><DD>the <code>Transaction</code> that was started.
665
+ <DT><B>Throws:</B>
666
+ <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.<DT><B>See Also:</B><DD><A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#getCurrentTransaction()"><CODE>getCurrentTransaction()</CODE></A></DL>
667
+ </DD>
668
+ </DL>
669
+ <HR>
670
+
671
+ <A NAME="getCurrentTransaction()"><!-- --></A><H3>
672
+ getCurrentTransaction</H3>
673
+ <PRE>
674
+ <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A> <B>getCurrentTransaction</B>()</PRE>
675
+ <DL>
676
+ <DD>Returns the current transaction for this thread, or throws an exception if
677
+ there is no current transaction. The current transaction is defined as the
678
+ result of the most recent, same-thread invocation of
679
+ <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#beginTransaction()"><CODE>beginTransaction()</CODE></A> that has not been committed or rolled back.
680
+
681
+ Use this method for when you expect there to be
682
+ a current transaction and consider it an error if there isn't.
683
+ <P>
684
+ <DD><DL>
685
+
686
+ <DT><B>Returns:</B><DD>The current transaction.
687
+ <DT><B>Throws:</B>
688
+ <DD><CODE>java.util.NoSuchElementException</CODE> - If there is no current transaction.</DL>
689
+ </DD>
690
+ </DL>
691
+ <HR>
692
+
693
+ <A NAME="getCurrentTransaction(com.google.appengine.api.datastore.Transaction)"><!-- --></A><H3>
694
+ getCurrentTransaction</H3>
695
+ <PRE>
696
+ <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A> <B>getCurrentTransaction</B>(<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&nbsp;returnedIfNoTxn)</PRE>
697
+ <DL>
698
+ <DD>Returns the current transaction for this thread, or returns the parameter
699
+ if there is no current transaction. You can use <code>null</code> or provide
700
+ your own object to represent null. See <A HREF="../../../../../com/google/appengine/api/datastore/DatastoreService.html#getCurrentTransaction()"><CODE>getCurrentTransaction()</CODE></A>
701
+ for a definition of "current transaction."
702
+
703
+ Use this method when you're not sure if there is a current transaction.
704
+ <P>
705
+ <DD><DL>
706
+ <DT><B>Parameters:</B><DD><CODE>returnedIfNoTxn</CODE> - The return value of this method if there is no
707
+ current transaction. Can be null.
708
+ <DT><B>Returns:</B><DD>The current transaction, or the parameter that was passed in
709
+ if there is no current transaction.</DL>
710
+ </DD>
711
+ </DL>
712
+ <HR>
713
+
714
+ <A NAME="getActiveTransactions()"><!-- --></A><H3>
715
+ getActiveTransactions</H3>
716
+ <PRE>
717
+ java.util.Collection&lt;<A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore">Transaction</A>&gt; <B>getActiveTransactions</B>()</PRE>
718
+ <DL>
719
+ <DD><DL>
720
+
721
+ <DT><B>Returns:</B><DD>All <A HREF="../../../../../com/google/appengine/api/datastore/Transaction.html" title="interface in com.google.appengine.api.datastore"><CODE>Transaction</CODE></A>s started by this thread upon which no
722
+ attempt to commit or rollback has been made.</DL>
723
+ </DD>
724
+ </DL>
725
+ <!-- ========= END OF CLASS DATA ========= -->
726
+ <HR>
727
+
728
+
729
+ <!-- ======= START OF BOTTOM NAVBAR ====== -->
730
+ <A NAME="navbar_bottom"><!-- --></A>
731
+ <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
732
+ <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
733
+ <TR>
734
+ <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
735
+ <A NAME="navbar_bottom_firstrow"><!-- --></A>
736
+ <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
737
+ <TR ALIGN="center" VALIGN="top">
738
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
739
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
740
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
741
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
742
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
743
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
744
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
745
+ </TR>
746
+ </TABLE>
747
+ </TD>
748
+ <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
749
+ </EM>
750
+ </TD>
751
+ </TR>
752
+
753
+ <TR>
754
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
755
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/DatastoreNeedIndexException.html" title="class in com.google.appengine.api.datastore"><B>PREV CLASS</B></A>&nbsp;
756
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/datastore/DatastoreServiceFactory.html" title="class in com.google.appengine.api.datastore"><B>NEXT CLASS</B></A></FONT></TD>
757
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
758
+ <A HREF="../../../../../index.html?com/google/appengine/api/datastore/DatastoreService.html" target="_top"><B>FRAMES</B></A> &nbsp;
759
+ &nbsp;<A HREF="DatastoreService.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
760
+ &nbsp;<SCRIPT type="text/javascript">
761
+ <!--
762
+ if(window==top) {
763
+ document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
764
+ }
765
+ //-->
766
+ </SCRIPT>
767
+ <NOSCRIPT>
768
+ <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
769
+ </NOSCRIPT>
770
+
771
+
772
+ </FONT></TD>
773
+ </TR>
774
+ <TR>
775
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
776
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
777
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
778
+ DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
779
+ </TR>
780
+ </TABLE>
781
+ <A NAME="skip-navbar_bottom"></A>
782
+ <!-- ======== END OF BOTTOM NAVBAR ======= -->
783
+
784
+ <HR>
785
+
786
+ </BODY>
787
+ </HTML>