ehcache-spring-1.1.xsd 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2. <!-- Copyright 2010 Nicholas Blair, Eric Dalquist Licensed under the Apache
  3. License, Version 2.0 (the "License"); you may not use this file except in
  4. compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
  5. Unless required by applicable law or agreed to in writing, software distributed
  6. under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
  7. OR CONDITIONS OF ANY KIND, either express or implied. See the License for
  8. the specific language governing permissions and limitations under the License. -->
  9. <xsd:schema
  10. xmlns="http://ehcache-spring-annotations.googlecode.com/svn/schema/ehcache-spring"
  11. xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tool="http://www.springframework.org/schema/tool"
  12. targetNamespace="http://ehcache-spring-annotations.googlecode.com/svn/schema/ehcache-spring"
  13. elementFormDefault="qualified" attributeFormDefault="unqualified">
  14. <xsd:import namespace="http://www.springframework.org/schema/tool"
  15. schemaLocation="http://www.springframework.org/schema/tool/spring-tool-2.5.xsd" />
  16. <xsd:annotation>
  17. <xsd:documentation><![CDATA[
  18. Defines the elements used in the ehcache-spring-annotation project's declarative
  19. caching infrastructure.
  20. ]]></xsd:documentation>
  21. </xsd:annotation>
  22. <xsd:complexType name="cache-manager-aware_type">
  23. <xsd:attribute name="cache-manager" type="xsd:string"
  24. default="cacheManager">
  25. <xsd:annotation>
  26. <xsd:documentation source="java:net.sf.ehcache.CacheManager"><![CDATA[
  27. The bean name of the CacheManager that is to be used to drive caching.
  28. This attribute is not required, and only needs to be specified
  29. explicitly if the bean name of the desired CacheManager
  30. is not 'cacheManager'.
  31. ]]></xsd:documentation>
  32. <xsd:appinfo>
  33. <tool:annotation kind="ref">
  34. <tool:expected-type type="net.sf.ehcache.CacheManager" />
  35. </tool:annotation>
  36. </xsd:appinfo>
  37. </xsd:annotation>
  38. </xsd:attribute>
  39. </xsd:complexType>
  40. <xsd:element name="annotation-driven">
  41. <xsd:complexType>
  42. <xsd:complexContent>
  43. <xsd:extension base="cache-manager-aware_type">
  44. <xsd:attribute name="create-missing-caches" type="xsd:boolean"
  45. default="false">
  46. <xsd:annotation>
  47. <xsd:documentation><![CDATA[
  48. Should cache names from @Cacheable annotations that don't exist in
  49. the CacheManager be created based on the default cache or should an
  50. exception be thrown?
  51. ]]></xsd:documentation>
  52. </xsd:annotation>
  53. </xsd:attribute>
  54. <xsd:attribute name="default-cache-key-generator"
  55. type="xsd:string" use="optional">
  56. <xsd:annotation>
  57. <xsd:documentation><![CDATA[
  58. Default CacheKeyGenerator implementation to use. If not specified
  59. HashCodeCacheKeyGenerator will be used as the default.
  60. ]]></xsd:documentation>
  61. </xsd:annotation>
  62. </xsd:attribute>
  63. <xsd:attribute name="self-populating-cache-scope"
  64. default="shared">
  65. <xsd:annotation>
  66. <xsd:documentation><![CDATA[
  67. Are the SelfPopulatingCache wrappers scoped to the method or are they shared
  68. among all methods using each self populating cache.
  69. ]]></xsd:documentation>
  70. </xsd:annotation>
  71. <xsd:simpleType>
  72. <xsd:restriction base="xsd:string">
  73. <xsd:enumeration value="method" />
  74. <xsd:enumeration value="shared" />
  75. </xsd:restriction>
  76. </xsd:simpleType>
  77. </xsd:attribute>
  78. <xsd:attribute name="proxy-target-class" type="xsd:boolean"
  79. default="false">
  80. <xsd:annotation>
  81. <xsd:documentation><![CDATA[
  82. Are class-based (CGLIB) proxies to be created? By default, standard
  83. Java interface-based proxies are created.
  84. Note: Class-based proxies require the @Transactional annotation to be
  85. defined on the concrete class. Annotations in interfaces will not work
  86. in that case (they will rather only work with interface-based proxies)!
  87. ]]></xsd:documentation>
  88. </xsd:annotation>
  89. </xsd:attribute>
  90. <xsd:attribute name="order" type="xsd:int">
  91. <xsd:annotation>
  92. <xsd:documentation source="java:org.springframework.core.Ordered"><![CDATA[
  93. Controls the ordering of the execution of the transaction advisor
  94. when multiple advice executes at a specific joinpoint.
  95. ]]></xsd:documentation>
  96. </xsd:annotation>
  97. </xsd:attribute>
  98. </xsd:extension>
  99. </xsd:complexContent>
  100. </xsd:complexType>
  101. </xsd:element>
  102. <xsd:element name="config">
  103. <xsd:complexType>
  104. <xsd:complexContent>
  105. <xsd:extension base="cache-manager-aware_type">
  106. <xsd:sequence>
  107. <xsd:element name="evict-expired-elements" type="evict-expired-elements_type"
  108. minOccurs="0" />
  109. </xsd:sequence>
  110. </xsd:extension>
  111. </xsd:complexContent>
  112. </xsd:complexType>
  113. </xsd:element>
  114. <xsd:complexType name="evict-expired-elements_type">
  115. <xsd:annotation>
  116. <xsd:documentation><![CDATA[
  117. The include and exclude rules will be processed in the order they are specified.
  118. ]]></xsd:documentation>
  119. </xsd:annotation>
  120. <xsd:choice minOccurs="0" maxOccurs="unbounded">
  121. <xsd:element name="include" type="cache-filtering_type"
  122. minOccurs="0" maxOccurs="unbounded" />
  123. <xsd:element name="exclude" type="cache-filtering_type"
  124. minOccurs="0" maxOccurs="unbounded" />
  125. </xsd:choice>
  126. <xsd:attribute name="interval" type="xsd:string"
  127. default="60">
  128. <xsd:annotation>
  129. <xsd:documentation><![CDATA[
  130. Declare how often Ehcache#evictExpiredElements() should be invoked; value
  131. is in minutes.
  132. ]]></xsd:documentation>
  133. </xsd:annotation>
  134. </xsd:attribute>
  135. </xsd:complexType>
  136. <xsd:complexType name="cache-filtering_type">
  137. <xsd:attribute name="name" type="xsd:string">
  138. <xsd:annotation>
  139. <xsd:documentation><![CDATA[
  140. A specific Ehcache name.
  141. ]]></xsd:documentation>
  142. </xsd:annotation>
  143. </xsd:attribute>
  144. <xsd:attribute name="pattern" type="xsd:string">
  145. <xsd:annotation>
  146. <xsd:documentation><![CDATA[
  147. A regular expression pattern to be used to match against Ehcache names.
  148. ]]></xsd:documentation>
  149. </xsd:annotation>
  150. </xsd:attribute>
  151. </xsd:complexType>
  152. </xsd:schema>