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,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>