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,808 @@
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
+ MemcacheService
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="MemcacheService";
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/memcache/LogAndContinueErrorHandler.html" title="class in com.google.appengine.api.memcache"><B>PREV CLASS</B></A>&nbsp;
58
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html" title="enum in com.google.appengine.api.memcache"><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/memcache/MemcacheService.html" target="_top"><B>FRAMES</B></A> &nbsp;
61
+ &nbsp;<A HREF="MemcacheService.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;<A HREF="#nested_class_summary">NESTED</A>&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.memcache</FONT>
91
+ <BR>
92
+ Interface MemcacheService</H2>
93
+ <HR>
94
+ <DL>
95
+ <DT><PRE>public interface <B>MemcacheService</B></DL>
96
+ </PRE>
97
+
98
+ <P>
99
+ The Java API for the App Engine Memcache service. This offers a fast
100
+ distrubted cache for commonly-used data. The cache is limited both in
101
+ duration and also in total space, so objects stored in it may be discarded
102
+ at any time.
103
+ <p>
104
+ Note that <code>null</code> is a legal value to store in the cache, or to use
105
+ as a cache key. Although the API is written for <CODE>Object</CODE>s, both
106
+ keys and values should be <CODE>Serializable</CODE>, although future versions
107
+ may someday accept specific types of non-<code>Serializable</code> <code>Objects</code>.
108
+ <p>
109
+ The values returned from this API are mutable copies from the cache; altering
110
+ them has no effect upon the cached value itself until assigned with one of
111
+ the <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object)"><CODE>put</CODE></A> methods. Likewise, the methods returning
112
+ collections return mutable collections, but changes do not affect the cache.
113
+ <p>
114
+ Except for the <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#increment(java.lang.Object, long)"><CODE>increment(java.lang.Object, long)</CODE></A> method, this service does
115
+ not offer atomicity guarantees. In particular, the multi-key
116
+ <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#getAll(java.util.Collection)"><CODE>getAll(java.util.Collection<java.lang.Object>)</CODE></A>, <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#putAll(java.util.Map, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>putAll(java.util.Map<java.lang.Object, java.lang.Object>, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)</CODE></A>, and <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#deleteAll(java.util.Collection)"><CODE>deleteAll(java.util.Collection<java.lang.Object>)</CODE></A> operations
117
+ are non-atomic.
118
+ <p>
119
+ <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#increment(java.lang.Object, long)"><CODE>Increment</CODE></A> has a number of caveats to its use; please
120
+ consult the method documentation.
121
+ <P>
122
+
123
+ <P>
124
+ <HR>
125
+
126
+ <P>
127
+ <!-- ======== NESTED CLASS SUMMARY ======== -->
128
+
129
+ <A NAME="nested_class_summary"><!-- --></A>
130
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
131
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
132
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
133
+ <B>Nested Class Summary</B></FONT></TH>
134
+ </TR>
135
+ <TR BGCOLOR="white" CLASS="TableRowColor">
136
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
137
+ <CODE>static&nbsp;class</CODE></FONT></TD>
138
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html" title="enum in com.google.appengine.api.memcache">MemcacheService.SetPolicy</A></B></CODE>
139
+
140
+ <BR>
141
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cache replacement strategies for <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)</CODE></A> operations,
142
+ indicating how to handle putting a value that already exists.</TD>
143
+ </TR>
144
+ </TABLE>
145
+ &nbsp;
146
+ <!-- ========== METHOD SUMMARY =========== -->
147
+
148
+ <A NAME="method_summary"><!-- --></A>
149
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
150
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
151
+ <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
152
+ <B>Method Summary</B></FONT></TH>
153
+ </TR>
154
+ <TR BGCOLOR="white" CLASS="TableRowColor">
155
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
156
+ <CODE>&nbsp;void</CODE></FONT></TD>
157
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#clearAll()">clearAll</A></B>()</CODE>
158
+
159
+ <BR>
160
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Empties the cache of all values.</TD>
161
+ </TR>
162
+ <TR BGCOLOR="white" CLASS="TableRowColor">
163
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
164
+ <CODE>&nbsp;boolean</CODE></FONT></TD>
165
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#contains(java.lang.Object)">contains</A></B>(java.lang.Object&nbsp;key)</CODE>
166
+
167
+ <BR>
168
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests whether a given value is in cache, even if its value is <code>null</code>.</TD>
169
+ </TR>
170
+ <TR BGCOLOR="white" CLASS="TableRowColor">
171
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
172
+ <CODE>&nbsp;boolean</CODE></FONT></TD>
173
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#delete(java.lang.Object)">delete</A></B>(java.lang.Object&nbsp;key)</CODE>
174
+
175
+ <BR>
176
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes <code>key</code> from the cache.</TD>
177
+ </TR>
178
+ <TR BGCOLOR="white" CLASS="TableRowColor">
179
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
180
+ <CODE>&nbsp;boolean</CODE></FONT></TD>
181
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#delete(java.lang.Object, long)">delete</A></B>(java.lang.Object&nbsp;key,
182
+ long&nbsp;millisNoReAdd)</CODE>
183
+
184
+ <BR>
185
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes the given key from the cache, and prevents it from being added
186
+ under the <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html#ADD_ONLY_IF_NOT_PRESENT"><CODE>MemcacheService.SetPolicy.ADD_ONLY_IF_NOT_PRESENT</CODE></A> policy for <code>millisNoReAdd</code>
187
+ milliseconds thereafter.</TD>
188
+ </TR>
189
+ <TR BGCOLOR="white" CLASS="TableRowColor">
190
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
191
+ <CODE>&nbsp;java.util.Set&lt;java.lang.Object&gt;</CODE></FONT></TD>
192
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#deleteAll(java.util.Collection)">deleteAll</A></B>(java.util.Collection&lt;java.lang.Object&gt;&nbsp;keys)</CODE>
193
+
194
+ <BR>
195
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Batch version of <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#delete(java.lang.Object)"><CODE>delete(Object)</CODE></A>.</TD>
196
+ </TR>
197
+ <TR BGCOLOR="white" CLASS="TableRowColor">
198
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
199
+ <CODE>&nbsp;java.util.Set&lt;java.lang.Object&gt;</CODE></FONT></TD>
200
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#deleteAll(java.util.Collection, long)">deleteAll</A></B>(java.util.Collection&lt;java.lang.Object&gt;&nbsp;keys,
201
+ long&nbsp;millisNoReAdd)</CODE>
202
+
203
+ <BR>
204
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Batch version of <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#delete(java.lang.Object, long)"><CODE>delete(Object, long)</CODE></A>.</TD>
205
+ </TR>
206
+ <TR BGCOLOR="white" CLASS="TableRowColor">
207
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
208
+ <CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
209
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#get(java.lang.Object)">get</A></B>(java.lang.Object&nbsp;key)</CODE>
210
+
211
+ <BR>
212
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Fetches a previously-stored value, or <code>null</code> if unset.</TD>
213
+ </TR>
214
+ <TR BGCOLOR="white" CLASS="TableRowColor">
215
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
216
+ <CODE>&nbsp;java.util.Map&lt;java.lang.Object,java.lang.Object&gt;</CODE></FONT></TD>
217
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#getAll(java.util.Collection)">getAll</A></B>(java.util.Collection&lt;java.lang.Object&gt;&nbsp;keys)</CODE>
218
+
219
+ <BR>
220
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Performs a get of multiple keys at once.</TD>
221
+ </TR>
222
+ <TR BGCOLOR="white" CLASS="TableRowColor">
223
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
224
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/memcache/ErrorHandler.html" title="interface in com.google.appengine.api.memcache">ErrorHandler</A></CODE></FONT></TD>
225
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#getErrorHandler()">getErrorHandler</A></B>()</CODE>
226
+
227
+ <BR>
228
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Fetches the current error handler.</TD>
229
+ </TR>
230
+ <TR BGCOLOR="white" CLASS="TableRowColor">
231
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
232
+ <CODE>&nbsp;java.lang.String</CODE></FONT></TD>
233
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#getNamespace()">getNamespace</A></B>()</CODE>
234
+
235
+ <BR>
236
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the name of the namespace that will be used in API
237
+ calls.</TD>
238
+ </TR>
239
+ <TR BGCOLOR="white" CLASS="TableRowColor">
240
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
241
+ <CODE>&nbsp;<A HREF="../../../../../com/google/appengine/api/memcache/Stats.html" title="interface in com.google.appengine.api.memcache">Stats</A></CODE></FONT></TD>
242
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#getStatistics()">getStatistics</A></B>()</CODE>
243
+
244
+ <BR>
245
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Fetches some statistics about the cache and its usage.</TD>
246
+ </TR>
247
+ <TR BGCOLOR="white" CLASS="TableRowColor">
248
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
249
+ <CODE>&nbsp;java.lang.Long</CODE></FONT></TD>
250
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#increment(java.lang.Object, long)">increment</A></B>(java.lang.Object&nbsp;key,
251
+ long&nbsp;delta)</CODE>
252
+
253
+ <BR>
254
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Atomically fetches, increments, and stores a given integral value.</TD>
255
+ </TR>
256
+ <TR BGCOLOR="white" CLASS="TableRowColor">
257
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
258
+ <CODE>&nbsp;void</CODE></FONT></TD>
259
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object)">put</A></B>(java.lang.Object&nbsp;key,
260
+ java.lang.Object&nbsp;value)</CODE>
261
+
262
+ <BR>
263
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A convenience shortcut, equivalent to <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>put(key, value, null, SetPolicy.SET_ALWAYS)</CODE></A>.</TD>
264
+ </TR>
265
+ <TR BGCOLOR="white" CLASS="TableRowColor">
266
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
267
+ <CODE>&nbsp;void</CODE></FONT></TD>
268
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration)">put</A></B>(java.lang.Object&nbsp;key,
269
+ java.lang.Object&nbsp;value,
270
+ <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache">Expiration</A>&nbsp;expires)</CODE>
271
+
272
+ <BR>
273
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Convenience put, equivalent to <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>put(key, value, expiration, SetPolicy.SET_ALWAYS)</CODE></A>.</TD>
274
+ </TR>
275
+ <TR BGCOLOR="white" CLASS="TableRowColor">
276
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
277
+ <CODE>&nbsp;boolean</CODE></FONT></TD>
278
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)">put</A></B>(java.lang.Object&nbsp;key,
279
+ java.lang.Object&nbsp;value,
280
+ <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache">Expiration</A>&nbsp;expires,
281
+ <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html" title="enum in com.google.appengine.api.memcache">MemcacheService.SetPolicy</A>&nbsp;policy)</CODE>
282
+
283
+ <BR>
284
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Store a new value into the cache, using <code>key</code>, but subject to the
285
+ <code>policy</code> regarding existing entries.</TD>
286
+ </TR>
287
+ <TR BGCOLOR="white" CLASS="TableRowColor">
288
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
289
+ <CODE>&nbsp;void</CODE></FONT></TD>
290
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#putAll(java.util.Map)">putAll</A></B>(java.util.Map&lt;java.lang.Object,java.lang.Object&gt;&nbsp;values)</CODE>
291
+
292
+ <BR>
293
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Convenience multi-put, equivalent to <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#putAll(java.util.Map, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>putAll(values, expires, SetPolicy.SET_ALWAYS)</CODE></A>.</TD>
294
+ </TR>
295
+ <TR BGCOLOR="white" CLASS="TableRowColor">
296
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
297
+ <CODE>&nbsp;void</CODE></FONT></TD>
298
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#putAll(java.util.Map, com.google.appengine.api.memcache.Expiration)">putAll</A></B>(java.util.Map&lt;java.lang.Object,java.lang.Object&gt;&nbsp;values,
299
+ <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache">Expiration</A>&nbsp;expires)</CODE>
300
+
301
+ <BR>
302
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Convenience multi-put, equivalent to <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#putAll(java.util.Map, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>putAll(values, expires, SetPolicy.SET_ALWAYS)</CODE></A>.</TD>
303
+ </TR>
304
+ <TR BGCOLOR="white" CLASS="TableRowColor">
305
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
306
+ <CODE>&nbsp;java.util.Set&lt;java.lang.Object&gt;</CODE></FONT></TD>
307
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#putAll(java.util.Map, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)">putAll</A></B>(java.util.Map&lt;java.lang.Object,java.lang.Object&gt;&nbsp;values,
308
+ <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache">Expiration</A>&nbsp;expires,
309
+ <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html" title="enum in com.google.appengine.api.memcache">MemcacheService.SetPolicy</A>&nbsp;policy)</CODE>
310
+
311
+ <BR>
312
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A batch-processing variant of <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)</CODE></A>.</TD>
313
+ </TR>
314
+ <TR BGCOLOR="white" CLASS="TableRowColor">
315
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
316
+ <CODE>&nbsp;void</CODE></FONT></TD>
317
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#setErrorHandler(com.google.appengine.api.memcache.ErrorHandler)">setErrorHandler</A></B>(<A HREF="../../../../../com/google/appengine/api/memcache/ErrorHandler.html" title="interface in com.google.appengine.api.memcache">ErrorHandler</A>&nbsp;handler)</CODE>
318
+
319
+ <BR>
320
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Registers a new <code>ErrorHandler</code>.</TD>
321
+ </TR>
322
+ <TR BGCOLOR="white" CLASS="TableRowColor">
323
+ <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
324
+ <CODE>&nbsp;void</CODE></FONT></TD>
325
+ <TD><CODE><B><A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#setNamespace(java.lang.String)">setNamespace</A></B>(java.lang.String&nbsp;newNamespace)</CODE>
326
+
327
+ <BR>
328
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Change the namespace used in API calls.</TD>
329
+ </TR>
330
+ </TABLE>
331
+ &nbsp;
332
+ <P>
333
+
334
+ <!-- ============ METHOD DETAIL ========== -->
335
+
336
+ <A NAME="method_detail"><!-- --></A>
337
+ <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
338
+ <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
339
+ <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
340
+ <B>Method Detail</B></FONT></TH>
341
+ </TR>
342
+ </TABLE>
343
+
344
+ <A NAME="getNamespace()"><!-- --></A><H3>
345
+ getNamespace</H3>
346
+ <PRE>
347
+ java.lang.String <B>getNamespace</B>()</PRE>
348
+ <DL>
349
+ <DD>Get the name of the namespace that will be used in API
350
+ calls. This is initially set based on <CODE>NamespaceManager.get()</CODE>.
351
+ <P>
352
+ <DD><DL>
353
+ </DL>
354
+ </DD>
355
+ </DL>
356
+ <HR>
357
+
358
+ <A NAME="setNamespace(java.lang.String)"><!-- --></A><H3>
359
+ setNamespace</H3>
360
+ <PRE>
361
+ void <B>setNamespace</B>(java.lang.String&nbsp;newNamespace)</PRE>
362
+ <DL>
363
+ <DD>Change the namespace used in API calls.
364
+ <P>
365
+ <DD><DL>
366
+ <DT><B>Parameters:</B><DD><CODE>newNamespace</CODE> - the new namespace to use. If <code>null</code>,
367
+ switch back to the default namespace, as specified by <CODE>NamespaceManager.get()</CODE>.</DL>
368
+ </DD>
369
+ </DL>
370
+ <HR>
371
+
372
+ <A NAME="get(java.lang.Object)"><!-- --></A><H3>
373
+ get</H3>
374
+ <PRE>
375
+ java.lang.Object <B>get</B>(java.lang.Object&nbsp;key)</PRE>
376
+ <DL>
377
+ <DD>Fetches a previously-stored value, or <code>null</code> if unset. Since
378
+ <code>null</code> might be the set value in some cases, so we also have
379
+ <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#contains(java.lang.Object)"><CODE>contains(Object)</CODE></A> which returns <code>boolean</code>.
380
+ <P>
381
+ <DD><DL>
382
+ <DT><B>Parameters:</B><DD><CODE>key</CODE> - the key object used to store the cache entry
383
+ <DT><B>Returns:</B><DD>the value object previously stored, or <code>null</code>
384
+ <DT><B>Throws:</B>
385
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the type of the key cannot be
386
+ supported.
387
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/memcache/InvalidValueException.html" title="class in com.google.appengine.api.memcache">InvalidValueException</A></CODE> - for any error in reconstituting the cache
388
+ value.</DL>
389
+ </DD>
390
+ </DL>
391
+ <HR>
392
+
393
+ <A NAME="contains(java.lang.Object)"><!-- --></A><H3>
394
+ contains</H3>
395
+ <PRE>
396
+ boolean <B>contains</B>(java.lang.Object&nbsp;key)</PRE>
397
+ <DL>
398
+ <DD>Tests whether a given value is in cache, even if its value is <code>null</code>.
399
+ <p>
400
+ Note that, because an object may be removed from cache at any time, the
401
+ following is not sound code:
402
+ <pre>
403
+ if (memcache.contains("key")) {
404
+ foo = memcache.get("key");
405
+ if (foo == null) {
406
+ // continue, assuming foo had the real value null
407
+ }
408
+ }
409
+ </pre>
410
+ The problem is that the cache could have dropped the entry between the
411
+ call to <code>contains</code> and @{link <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#get(java.lang.Object)"><CODE>get</CODE></A>. This is
412
+ a sounder pattern:
413
+ <pre>
414
+ foo = memcache.get("key");
415
+ if (foo == null) {
416
+ if (memcache.contains("key")) {
417
+ // continue, assuming foo had the real value null
418
+ } else {
419
+ // continue; foo may have had a real null, but has been dropped now
420
+ }
421
+ }
422
+ </pre>
423
+ Another alternative is to prefer <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#getAll(java.util.Collection)"><CODE>getAll(Collection)</CODE></A>, although
424
+ it requires making an otherwise-unneeded <code>Collection</code> of some sort.
425
+ <P>
426
+ <DD><DL>
427
+ <DT><B>Parameters:</B><DD><CODE>key</CODE> - the key object used to store the cache entry
428
+ <DT><B>Returns:</B><DD><code>true</code> if the cache contains an entry for the key
429
+ <DT><B>Throws:</B>
430
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key cannot be serialized</DL>
431
+ </DD>
432
+ </DL>
433
+ <HR>
434
+
435
+ <A NAME="getAll(java.util.Collection)"><!-- --></A><H3>
436
+ getAll</H3>
437
+ <PRE>
438
+ java.util.Map&lt;java.lang.Object,java.lang.Object&gt; <B>getAll</B>(java.util.Collection&lt;java.lang.Object&gt;&nbsp;keys)</PRE>
439
+ <DL>
440
+ <DD>Performs a get of multiple keys at once. This is more efficient than
441
+ multiple separate calls to <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#get(java.lang.Object)"><CODE>get(Object)</CODE></A>, and allows a single
442
+ call to both test for <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#contains(java.lang.Object)"><CODE>contains(Object)</CODE></A> and also fetch the value,
443
+ because the return will not include mappings for keys not found.
444
+ <P>
445
+ <DD><DL>
446
+ <DT><B>Parameters:</B><DD><CODE>keys</CODE> - a collection of keys for which values should be retrieved
447
+ <DT><B>Returns:</B><DD>a mapping from keys to values of any entries found. If a requested
448
+ key is not found in the cache, the key will not be in the returned Map.
449
+ <DT><B>Throws:</B>
450
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if an element of <code>keys</code> cannot be
451
+ used as a cache key. They should be <CODE>Serializable</CODE>.
452
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/memcache/InvalidValueException.html" title="class in com.google.appengine.api.memcache">InvalidValueException</A></CODE> - for any error in deserializing the cache
453
+ value.</DL>
454
+ </DD>
455
+ </DL>
456
+ <HR>
457
+
458
+ <A NAME="put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><!-- --></A><H3>
459
+ put</H3>
460
+ <PRE>
461
+ boolean <B>put</B>(java.lang.Object&nbsp;key,
462
+ java.lang.Object&nbsp;value,
463
+ <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache">Expiration</A>&nbsp;expires,
464
+ <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html" title="enum in com.google.appengine.api.memcache">MemcacheService.SetPolicy</A>&nbsp;policy)</PRE>
465
+ <DL>
466
+ <DD>Store a new value into the cache, using <code>key</code>, but subject to the
467
+ <code>policy</code> regarding existing entries.
468
+ <P>
469
+ <DD><DL>
470
+ <DT><B>Parameters:</B><DD><CODE>key</CODE> - the key for the new cache entry<DD><CODE>value</CODE> - the value to be stored<DD><CODE>expires</CODE> - an <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache"><CODE>Expiration</CODE></A> object to set time-based expiration.
471
+ <code>null</code> may be used indicate no specific expiration.<DD><CODE>policy</CODE> - Requests particular handling regarding pre-existing entries
472
+ under the same key. This parameter must not be <code>null</code>.
473
+ <DT><B>Returns:</B><DD><code>true</code> if a new entry was created, <code>false</code> if not
474
+ because of the <code>policy</code>.
475
+ <DT><B>Throws:</B>
476
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key or value type can't
477
+ be stored as a cache item. They should be <CODE>Serializable</CODE>.</DL>
478
+ </DD>
479
+ </DL>
480
+ <HR>
481
+
482
+ <A NAME="put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration)"><!-- --></A><H3>
483
+ put</H3>
484
+ <PRE>
485
+ void <B>put</B>(java.lang.Object&nbsp;key,
486
+ java.lang.Object&nbsp;value,
487
+ <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache">Expiration</A>&nbsp;expires)</PRE>
488
+ <DL>
489
+ <DD>Convenience put, equivalent to <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>put(key, value, expiration, SetPolicy.SET_ALWAYS)</CODE></A>.
490
+ <P>
491
+ <DD><DL>
492
+ <DT><B>Parameters:</B><DD><CODE>key</CODE> - key of the new entry<DD><CODE>value</CODE> - value for the new entry<DD><CODE>expires</CODE> - time-based <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache"><CODE>Expiration</CODE></A>, or <code>null</code> for none
493
+ <DT><B>Throws:</B>
494
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key or value type can't
495
+ be stored as a cache item. They should be <CODE>Serializable</CODE>.</DL>
496
+ </DD>
497
+ </DL>
498
+ <HR>
499
+
500
+ <A NAME="put(java.lang.Object, java.lang.Object)"><!-- --></A><H3>
501
+ put</H3>
502
+ <PRE>
503
+ void <B>put</B>(java.lang.Object&nbsp;key,
504
+ java.lang.Object&nbsp;value)</PRE>
505
+ <DL>
506
+ <DD>A convenience shortcut, equivalent to <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>put(key, value, null, SetPolicy.SET_ALWAYS)</CODE></A>.
507
+ <P>
508
+ <DD><DL>
509
+ <DT><B>Parameters:</B><DD><CODE>key</CODE> - key of the new entry<DD><CODE>value</CODE> - value for the new entry
510
+ <DT><B>Throws:</B>
511
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key or value type can't
512
+ be stored as a cache item. They should be <CODE>Serializable</CODE>.</DL>
513
+ </DD>
514
+ </DL>
515
+ <HR>
516
+
517
+ <A NAME="putAll(java.util.Map, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><!-- --></A><H3>
518
+ putAll</H3>
519
+ <PRE>
520
+ java.util.Set&lt;java.lang.Object&gt; <B>putAll</B>(java.util.Map&lt;java.lang.Object,java.lang.Object&gt;&nbsp;values,
521
+ <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache">Expiration</A>&nbsp;expires,
522
+ <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html" title="enum in com.google.appengine.api.memcache">MemcacheService.SetPolicy</A>&nbsp;policy)</PRE>
523
+ <DL>
524
+ <DD>A batch-processing variant of <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)</CODE></A>. This is more efficiently
525
+ implemented by the service than multiple calls.
526
+ <P>
527
+ <DD><DL>
528
+ <DT><B>Parameters:</B><DD><CODE>values</CODE> - the key/value mappings to add to the cache<DD><CODE>expires</CODE> - the expiration time for all <code>values</code>, or
529
+ <code>null</code> for no time-based expiration.<DD><CODE>policy</CODE> - what to do if the entry is or is not already present
530
+ <DT><B>Returns:</B><DD>the set of keys for which entries were created. Keys in
531
+ <code>values</code> may not be in the returned set because of the
532
+ <code>policy</code> regarding pre-existing entries.
533
+ <DT><B>Throws:</B>
534
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key or value type can't
535
+ be stored as a cache item. They should be <CODE>Serializable</CODE>.</DL>
536
+ </DD>
537
+ </DL>
538
+ <HR>
539
+
540
+ <A NAME="putAll(java.util.Map, com.google.appengine.api.memcache.Expiration)"><!-- --></A><H3>
541
+ putAll</H3>
542
+ <PRE>
543
+ void <B>putAll</B>(java.util.Map&lt;java.lang.Object,java.lang.Object&gt;&nbsp;values,
544
+ <A HREF="../../../../../com/google/appengine/api/memcache/Expiration.html" title="class in com.google.appengine.api.memcache">Expiration</A>&nbsp;expires)</PRE>
545
+ <DL>
546
+ <DD>Convenience multi-put, equivalent to <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#putAll(java.util.Map, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>putAll(values, expires, SetPolicy.SET_ALWAYS)</CODE></A>.
547
+ <P>
548
+ <DD><DL>
549
+ <DT><B>Parameters:</B><DD><CODE>values</CODE> - key/value mappings to add to the cache<DD><CODE>expires</CODE> - expiration time for the new values, or <code>null</code> for no
550
+ time-based expiration
551
+ <DT><B>Throws:</B>
552
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key or value type can't
553
+ be stored as a cache item. They should be <CODE>Serializable</CODE>.</DL>
554
+ </DD>
555
+ </DL>
556
+ <HR>
557
+
558
+ <A NAME="putAll(java.util.Map)"><!-- --></A><H3>
559
+ putAll</H3>
560
+ <PRE>
561
+ void <B>putAll</B>(java.util.Map&lt;java.lang.Object,java.lang.Object&gt;&nbsp;values)</PRE>
562
+ <DL>
563
+ <DD>Convenience multi-put, equivalent to <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#putAll(java.util.Map, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>putAll(values, expires, SetPolicy.SET_ALWAYS)</CODE></A>.
564
+ <P>
565
+ <DD><DL>
566
+ <DT><B>Parameters:</B><DD><CODE>values</CODE> - key/value mappings for new entries to add to the cache
567
+ <DT><B>Throws:</B>
568
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key or value type can't
569
+ be stored as a cache item. They should be <CODE>Serializable</CODE>.</DL>
570
+ </DD>
571
+ </DL>
572
+ <HR>
573
+
574
+ <A NAME="delete(java.lang.Object)"><!-- --></A><H3>
575
+ delete</H3>
576
+ <PRE>
577
+ boolean <B>delete</B>(java.lang.Object&nbsp;key)</PRE>
578
+ <DL>
579
+ <DD>Removes <code>key</code> from the cache.
580
+ <P>
581
+ <DD><DL>
582
+ <DT><B>Parameters:</B><DD><CODE>key</CODE> - the key of the entry to delete.
583
+ <DT><B>Returns:</B><DD><code>true</code> if an entry existed, but was discarded
584
+ <DT><B>Throws:</B>
585
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key can't be used in the cache
586
+ because it is not <CODE>Serializable</CODE>.</DL>
587
+ </DD>
588
+ </DL>
589
+ <HR>
590
+
591
+ <A NAME="delete(java.lang.Object, long)"><!-- --></A><H3>
592
+ delete</H3>
593
+ <PRE>
594
+ boolean <B>delete</B>(java.lang.Object&nbsp;key,
595
+ long&nbsp;millisNoReAdd)</PRE>
596
+ <DL>
597
+ <DD>Removes the given key from the cache, and prevents it from being added
598
+ under the <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html#ADD_ONLY_IF_NOT_PRESENT"><CODE>MemcacheService.SetPolicy.ADD_ONLY_IF_NOT_PRESENT</CODE></A> policy for <code>millisNoReAdd</code>
599
+ milliseconds thereafter. Calls to a <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)"><CODE>put(java.lang.Object, java.lang.Object, com.google.appengine.api.memcache.Expiration, com.google.appengine.api.memcache.MemcacheService.SetPolicy)</CODE></A> method using
600
+ <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html#SET_ALWAYS"><CODE>MemcacheService.SetPolicy.SET_ALWAYS</CODE></A> are not blocked, however.
601
+ <P>
602
+ <DD><DL>
603
+ <DT><B>Parameters:</B><DD><CODE>key</CODE> - key to delete<DD><CODE>millisNoReAdd</CODE> - time during which calls to put using ADD_IF_NOT_PRESENT
604
+ should be denied.
605
+ <DT><B>Returns:</B><DD><code>true</code> if an entry existed to delete
606
+ <DT><B>Throws:</B>
607
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key can't be used in the cache
608
+ because it is not <CODE>Serializable</CODE>.</DL>
609
+ </DD>
610
+ </DL>
611
+ <HR>
612
+
613
+ <A NAME="deleteAll(java.util.Collection)"><!-- --></A><H3>
614
+ deleteAll</H3>
615
+ <PRE>
616
+ java.util.Set&lt;java.lang.Object&gt; <B>deleteAll</B>(java.util.Collection&lt;java.lang.Object&gt;&nbsp;keys)</PRE>
617
+ <DL>
618
+ <DD>Batch version of <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#delete(java.lang.Object)"><CODE>delete(Object)</CODE></A>.
619
+ <P>
620
+ <DD><DL>
621
+ <DT><B>Parameters:</B><DD><CODE>keys</CODE> - a collection of keys for entries to delete
622
+ <DT><B>Returns:</B><DD>the Set of keys deleted. Any keys in <code>keys</code> but not in the
623
+ returned set were not found in the cache.
624
+ <DT><B>Throws:</B>
625
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if a key can't be used in the cache
626
+ because it is not <CODE>Serializable</CODE>.</DL>
627
+ </DD>
628
+ </DL>
629
+ <HR>
630
+
631
+ <A NAME="deleteAll(java.util.Collection, long)"><!-- --></A><H3>
632
+ deleteAll</H3>
633
+ <PRE>
634
+ java.util.Set&lt;java.lang.Object&gt; <B>deleteAll</B>(java.util.Collection&lt;java.lang.Object&gt;&nbsp;keys,
635
+ long&nbsp;millisNoReAdd)</PRE>
636
+ <DL>
637
+ <DD>Batch version of <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#delete(java.lang.Object, long)"><CODE>delete(Object, long)</CODE></A>.
638
+ <P>
639
+ <DD><DL>
640
+ <DT><B>Parameters:</B><DD><CODE>keys</CODE> - the keys to be deleted<DD><CODE>millisNoReAdd</CODE> - time during which calls to put using
641
+ <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html#ADD_ONLY_IF_NOT_PRESENT"><CODE>MemcacheService.SetPolicy.ADD_ONLY_IF_NOT_PRESENT</CODE></A> should be denied.
642
+ <DT><B>Returns:</B><DD>the set of keys deleted.
643
+ <DT><B>Throws:</B>
644
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key can't be used in the cache
645
+ because it is not <CODE>Serializable</CODE>.</DL>
646
+ </DD>
647
+ </DL>
648
+ <HR>
649
+
650
+ <A NAME="increment(java.lang.Object, long)"><!-- --></A><H3>
651
+ increment</H3>
652
+ <PRE>
653
+ java.lang.Long <B>increment</B>(java.lang.Object&nbsp;key,
654
+ long&nbsp;delta)</PRE>
655
+ <DL>
656
+ <DD>Atomically fetches, increments, and stores a given integral value.
657
+ "Integral" types are <CODE>Byte</CODE>, <CODE>Short</CODE>, <CODE>Integer</CODE>,
658
+ <CODE>Long</CODE>, and in some cases <CODE>String</CODE> (if the string is parseable
659
+ as a number, for example via <CODE>Long.parseLong(String)</CODE>. The entry
660
+ must already exist, and have a non-negative value. To facilitate use as
661
+ an atomic countdown, incremeting by a negative value (i.e. decrementing)
662
+ will not go below zero: incrementing <code>2</code> by <code>-5</code> will return
663
+ <code>0</code>, not <code>-3</code>.
664
+ <p>
665
+ Increment by positive amounts may wrap the value to become negative,
666
+ creating an error for later increment operations. The value is considered
667
+ as a 64-bit <code>long</code> during the increment, so the return value will
668
+ wrap at <code>2^63 - 1</code>, regardless of the actual storage type.
669
+ <P>
670
+ <DD><DL>
671
+ <DT><B>Parameters:</B><DD><CODE>key</CODE> - the key of the entry to manipulate<DD><CODE>delta</CODE> - the size of the increment, positive or negative.
672
+ <DT><B>Returns:</B><DD>the post-increment value, as a long. However, a <A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.html#get(java.lang.Object)"><CODE>get(java.lang.Object)</CODE></A>
673
+ of the key will still have the original type (<CODE>Byte</CODE>,
674
+ <CODE>Short</CODE>, etc.). If there is no entry for <code>key</code>,
675
+ returns <code>null</code>.
676
+ <DT><B>Throws:</B>
677
+ <DD><CODE>java.lang.IllegalArgumentException</CODE> - if the key can't be used in the cache
678
+ because it is not <CODE>Serializable</CODE>.
679
+ <DD><CODE><A HREF="../../../../../com/google/appengine/api/memcache/InvalidValueException.html" title="class in com.google.appengine.api.memcache">InvalidValueException</A></CODE> - if the object incremented is not
680
+ of a integral type</DL>
681
+ </DD>
682
+ </DL>
683
+ <HR>
684
+
685
+ <A NAME="clearAll()"><!-- --></A><H3>
686
+ clearAll</H3>
687
+ <PRE>
688
+ void <B>clearAll</B>()</PRE>
689
+ <DL>
690
+ <DD>Empties the cache of all values. Statistics are not
691
+ affected. Note that <code>clearAll()</code> does not respect
692
+ namespaces - this flushes the cache for every namespace.
693
+ <P>
694
+ <DD><DL>
695
+ </DL>
696
+ </DD>
697
+ </DL>
698
+ <HR>
699
+
700
+ <A NAME="getStatistics()"><!-- --></A><H3>
701
+ getStatistics</H3>
702
+ <PRE>
703
+ <A HREF="../../../../../com/google/appengine/api/memcache/Stats.html" title="interface in com.google.appengine.api.memcache">Stats</A> <B>getStatistics</B>()</PRE>
704
+ <DL>
705
+ <DD>Fetches some statistics about the cache and its usage.
706
+ <P>
707
+ <DD><DL>
708
+
709
+ <DT><B>Returns:</B><DD>statistics for the cache. Note that <code>getStatistics()</code> does
710
+ not respect namespaces - this will return stats for every namespace. The
711
+ response will never be <code>null</code>.</DL>
712
+ </DD>
713
+ </DL>
714
+ <HR>
715
+
716
+ <A NAME="setErrorHandler(com.google.appengine.api.memcache.ErrorHandler)"><!-- --></A><H3>
717
+ setErrorHandler</H3>
718
+ <PRE>
719
+ void <B>setErrorHandler</B>(<A HREF="../../../../../com/google/appengine/api/memcache/ErrorHandler.html" title="interface in com.google.appengine.api.memcache">ErrorHandler</A>&nbsp;handler)</PRE>
720
+ <DL>
721
+ <DD>Registers a new <code>ErrorHandler</code>. The <code>handler</code> is used to field
722
+ any errors which aren't necessarily the application programmer's fault:
723
+ things like network timeouts, for example. Value correctness and usage
724
+ errors <CODE>IllegalArgumentException</CODE>, <A HREF="../../../../../com/google/appengine/api/memcache/InvalidValueException.html" title="class in com.google.appengine.api.memcache"><CODE>InvalidValueException</CODE></A> are
725
+ still thrown normally.
726
+ <P>
727
+ <DD><DL>
728
+ <DT><B>Parameters:</B><DD><CODE>handler</CODE> - the new <code>ErrorHandler</code> to use. May not be
729
+ <code>null</code>; use <CODE>ErrorHandler#LOGGING_ERROR_HANDLER</CODE> to
730
+ explicitly restore default behavior.</DL>
731
+ </DD>
732
+ </DL>
733
+ <HR>
734
+
735
+ <A NAME="getErrorHandler()"><!-- --></A><H3>
736
+ getErrorHandler</H3>
737
+ <PRE>
738
+ <A HREF="../../../../../com/google/appengine/api/memcache/ErrorHandler.html" title="interface in com.google.appengine.api.memcache">ErrorHandler</A> <B>getErrorHandler</B>()</PRE>
739
+ <DL>
740
+ <DD>Fetches the current error handler.
741
+ <P>
742
+ <DD><DL>
743
+ </DL>
744
+ </DD>
745
+ </DL>
746
+ <!-- ========= END OF CLASS DATA ========= -->
747
+ <HR>
748
+
749
+
750
+ <!-- ======= START OF BOTTOM NAVBAR ====== -->
751
+ <A NAME="navbar_bottom"><!-- --></A>
752
+ <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
753
+ <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
754
+ <TR>
755
+ <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
756
+ <A NAME="navbar_bottom_firstrow"><!-- --></A>
757
+ <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
758
+ <TR ALIGN="center" VALIGN="top">
759
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
760
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
761
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
762
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
763
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
764
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
765
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
766
+ </TR>
767
+ </TABLE>
768
+ </TD>
769
+ <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
770
+ </EM>
771
+ </TD>
772
+ </TR>
773
+
774
+ <TR>
775
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
776
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/memcache/LogAndContinueErrorHandler.html" title="class in com.google.appengine.api.memcache"><B>PREV CLASS</B></A>&nbsp;
777
+ &nbsp;<A HREF="../../../../../com/google/appengine/api/memcache/MemcacheService.SetPolicy.html" title="enum in com.google.appengine.api.memcache"><B>NEXT CLASS</B></A></FONT></TD>
778
+ <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
779
+ <A HREF="../../../../../index.html?com/google/appengine/api/memcache/MemcacheService.html" target="_top"><B>FRAMES</B></A> &nbsp;
780
+ &nbsp;<A HREF="MemcacheService.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
781
+ &nbsp;<SCRIPT type="text/javascript">
782
+ <!--
783
+ if(window==top) {
784
+ document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
785
+ }
786
+ //-->
787
+ </SCRIPT>
788
+ <NOSCRIPT>
789
+ <A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
790
+ </NOSCRIPT>
791
+
792
+
793
+ </FONT></TD>
794
+ </TR>
795
+ <TR>
796
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
797
+ SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
798
+ <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
799
+ DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
800
+ </TR>
801
+ </TABLE>
802
+ <A NAME="skip-navbar_bottom"></A>
803
+ <!-- ======== END OF BOTTOM NAVBAR ======= -->
804
+
805
+ <HR>
806
+
807
+ </BODY>
808
+ </HTML>