Jump To Close Expand all Collapse all Table of contents Developer Guide I. Programmable APIs Expand section "I. Programmable APIs" Collapse section "I. Programmable APIs" 1. The Cache API Expand section "1. The Cache API" Collapse section "1. The Cache API" 1.1. Using the ConfigurationBuilder API to Configure the Cache API 1.2. Per-Invocation Flags Expand section "1.2. Per-Invocation Flags" Collapse section "1.2. Per-Invocation Flags" 1.2.1. Per-Invocation Flag Functions 1.2.2. Configure Per-Invocation Flags 1.2.3. Per-Invocation Flags Example 1.3. The AdvancedCache Interface Expand section "1.3. The AdvancedCache Interface" Collapse section "1.3. The AdvancedCache Interface" 1.3.1. Flag Usage with the AdvancedCache Interface 1.3.2. Custom Interceptors and the AdvancedCache Interface 1.3.3. Limitations of Map Methods 1.3.4. Custom Interceptors 1.4. Placing and Retrieving Sets of Data 2. The Batching API Expand section "2. The Batching API" Collapse section "2. The Batching API" 2.1. About Java Transaction API 2.2. Batching and the Java Transaction API (JTA) 2.3. Using the Batching API Expand section "2.3. Using the Batching API" Collapse section "2.3. Using the Batching API" 2.3.1. Configure the Batching API 2.3.2. Use the Batching API 2.3.3. Batching API Usage Example 3. The Grouping API Expand section "3. The Grouping API" Collapse section "3. The Grouping API" 3.1. Grouping API Operations 3.2. Grouping API Use Case 3.3. Configure the Grouping API Expand section "3.3. Configure the Grouping API" Collapse section "3.3. Configure the Grouping API" 3.3.1. Enable Groups 3.3.2. Specify an Intrinsic Group 3.3.3. Specify an Extrinsic Group 3.3.4. Register Groupers 4. The Persistence SPI Expand section "4. The Persistence SPI" Collapse section "4. The Persistence SPI" 4.1. Persistence SPI Benefits 4.2. Programmatically Configure the Persistence SPI 5. The ConfigurationBuilder API Expand section "5. The ConfigurationBuilder API" Collapse section "5. The ConfigurationBuilder API" 5.1. Using the ConfigurationBuilder API Expand section "5.1. Using the ConfigurationBuilder API" Collapse section "5.1. Using the ConfigurationBuilder API" 5.1.1. Programmatically Create a CacheManager and Replicated Cache 5.1.2. Create a Customized Cache Using the Default Named Cache 5.1.3. Create a Customized Cache Using a Non-Default Named Cache 5.1.4. Using the Configuration Builder to Create Caches Programmatically 5.1.5. Global Configuration Examples 5.1.6. Cache Level Configuration Examples 6. The Externalizable API Expand section "6. The Externalizable API" Collapse section "6. The Externalizable API" 6.1. Customize Externalizers 6.2. Annotating Objects for Marshalling Using @SerializeWith 6.3. Using an Advanced Externalizer Expand section "6.3. Using an Advanced Externalizer" Collapse section "6.3. Using an Advanced Externalizer" 6.3.1. Implement the Methods 6.3.2. Link Externalizers with Marshaller Classes 6.3.3. Register the Advanced Externalizer (Declaratively) 6.3.4. Register the Advanced Externalizer (Programmatically) 6.3.5. Register Multiple Externalizers 6.4. Custom Externalizer ID Values Expand section "6.4. Custom Externalizer ID Values" Collapse section "6.4. Custom Externalizer ID Values" 6.4.1. Customize the Externalizer ID (Declaratively) 6.4.2. Customize the Externalizer ID (Programmatically) 7. The Notification/Listener API Expand section "7. The Notification/Listener API" Collapse section "7. The Notification/Listener API" 7.1. Listener Example 7.2. Cache Entry Modified Listener Configuration 7.3. Listener Notifications Expand section "7.3. Listener Notifications" Collapse section "7.3. Listener Notifications" 7.3.1. About Cache-level Notifications 7.3.2. Cache Manager-level Notifications 7.3.3. About Synchronous and Asynchronous Notifications 7.4. Modifying Cache Entries Expand section "7.4. Modifying Cache Entries" Collapse section "7.4. Modifying Cache Entries" 7.4.1. Cache Entry Modified Listener Configuration 7.4.2. Cache Entry Modified Listener Example 7.5. Clustered Listeners Expand section "7.5. Clustered Listeners" Collapse section "7.5. Clustered Listeners" 7.5.1. Configuring Clustered Listeners 7.5.2. The Cache Listener API 7.5.3. Clustered Listener Example 7.5.4. Optimized Cache Filter Converter 7.6. NotifyingFutures Expand section "7.6. NotifyingFutures" Collapse section "7.6. NotifyingFutures" 7.6.1. NotifyingFutures Example 7.7. Remote Event Listeners (Hot Rod) Expand section "7.7. Remote Event Listeners (Hot Rod)" Collapse section "7.7. Remote Event Listeners (Hot Rod)" 7.7.1. Adding and Removing Event Listeners 7.7.2. Remote Event Client Listener Example 7.7.3. Filtering Remote Events 7.7.4. Customizing Remote Events 7.7.5. Event Marshalling 7.7.6. Remote Event Clustering and Failover 8. JSR-107 (JCache) API Expand section "8. JSR-107 (JCache) API" Collapse section "8. JSR-107 (JCache) API" 8.1. Dependencies 8.2. Create a local cache 8.3. Store and retrieve data 8.4. Comparing java.util.concurrent.ConcurrentMap and javax.cache.Cache APIs 8.5. Clustering JCache instances 8.6. Multiple Caching Providers II. Securing Data in Red Hat JBoss Data Grid Expand section "II. Securing Data in Red Hat JBoss Data Grid" Collapse section "II. Securing Data in Red Hat JBoss Data Grid" 9. Red Hat JBoss Data Grid Security: Authorization and Authentication Expand section "9. Red Hat JBoss Data Grid Security: Authorization and Authentication" Collapse section "9. Red Hat JBoss Data Grid Security: Authorization and Authentication" 9.1. Red Hat JBoss Data Grid Security: Authorization and Authentication 9.2. Permissions 9.3. Role Mapping 9.4. Configuring Authentication and Role Mapping using JBoss EAP Login Modules 9.5. Configuring Red Hat JBoss Data Grid for Authorization 9.6. Data Security for Library Mode Expand section "9.6. Data Security for Library Mode" Collapse section "9.6. Data Security for Library Mode" 9.6.1. Subject and Principal Classes 9.6.2. Obtaining a Subject 9.6.3. Subject Authentication 9.6.4. Authorization Using a SecurityManager 9.6.5. Security Manager in Java 9.7. Data Security for Remote Client Server Mode Expand section "9.7. Data Security for Remote Client Server Mode" Collapse section "9.7. Data Security for Remote Client Server Mode" 9.7.1. About Security Realms 9.7.2. Add a New Security Realm 9.7.3. Add a User to a Security Realm 9.7.4. Configuring Security Realms Declaratively 9.7.5. Loading Roles from LDAP for Authorization (Remote Client-Server Mode) 9.7.6. Hot Rod Interface Security 9.7.7. User Authentication over Hot Rod Using SASL 9.8. Active Directory Authentication (Non-Kerberos) 9.9. Active Directory Authentication Using Kerberos (GSSAPI) 9.10. The Security Audit Logger Expand section "9.10. The Security Audit Logger" Collapse section "9.10. The Security Audit Logger" 9.10.1. Configure the Security Audit Logger (Library Mode) 9.10.2. Configure the Security Audit Logger (Remote Client-Server Mode) 9.10.3. Custom Audit Loggers 10. Security for Cluster Traffic Expand section "10. Security for Cluster Traffic" Collapse section "10. Security for Cluster Traffic" 10.1. Node Authentication and Authorization (Remote Client-Server Mode) Expand section "10.1. Node Authentication and Authorization (Remote Client-Server Mode)" Collapse section "10.1. Node Authentication and Authorization (Remote Client-Server Mode)" 10.1.1. Configure Node Authentication for Cluster Security (DIGEST-MD5) 10.1.2. Configure Node Authentication for Cluster Security (GSSAPI/Kerberos) 10.2. Configure Node Security in Library Mode Expand section "10.2. Configure Node Security in Library Mode" Collapse section "10.2. Configure Node Security in Library Mode" 10.2.1. Simple Authorizing Callback Handler 10.2.2. Configure Node Authentication for Library Mode (DIGEST-MD5) 10.2.3. Configure Node Authentication for Library Mode (GSSAPI) 10.2.4. Node Authorization in Library Mode 10.3. JGroups ENCRYPT Expand section "10.3. JGroups ENCRYPT" Collapse section "10.3. JGroups ENCRYPT" 10.3.1. ENCRYPT Configured with a secretKey in a Key Store 10.3.2. ENCRYPT Using a Key Store 10.3.3. ENCRYPT Configured with Algorithms and Key Sizes 10.3.4. ENCRYPT Configuration Parameters III. Advanced Features in Red Hat JBoss Data Grid Expand section "III. Advanced Features in Red Hat JBoss Data Grid" Collapse section "III. Advanced Features in Red Hat JBoss Data Grid" 11. Transactions Expand section "11. Transactions" Collapse section "11. Transactions" 11.1. About Java Transaction API 11.2. Transactions Spanning Multiple Cache Instances 11.3. The Transaction Manager 11.4. About JTA Transaction Manager Lookup Classes 12. Marshalling Expand section "12. Marshalling" Collapse section "12. Marshalling" 12.1. About Marshalling Framework 12.2. Support for Non-Serializable Objects 12.3. Hot Rod and Marshalling 12.4. Configuring the Marshaller using the RemoteCacheManager 12.5. Troubleshooting Expand section "12.5. Troubleshooting" Collapse section "12.5. Troubleshooting" 12.5.1. Marshalling Troubleshooting 12.5.2. Other Marshalling Related Issues 13. The Infinispan CDI Module Expand section "13. The Infinispan CDI Module" Collapse section "13. The Infinispan CDI Module" 13.1. Using Infinispan CDI Expand section "13.1. Using Infinispan CDI" Collapse section "13.1. Using Infinispan CDI" 13.1.1. Infinispan CDI Prerequisites 13.1.2. Set the CDI Maven Dependency 13.2. Using the Infinispan CDI Module Expand section "13.2. Using the Infinispan CDI Module" Collapse section "13.2. Using the Infinispan CDI Module" 13.2.1. Configure and Inject Infinispan Caches 13.2.2. Configure Cache Managers with CDI 13.2.3. Storage and Retrieval Using CDI Annotations 13.2.4. Cache Operations 14. Rolling Upgrades Expand section "14. Rolling Upgrades" Collapse section "14. Rolling Upgrades" 14.1. Rolling Upgrades Using Hot Rod 14.2. Rolling Upgrades Using REST 14.3. RollingUpgradeManager Operations 14.4. RemoteCacheStore Parameters for Rolling Upgrades Expand section "14.4. RemoteCacheStore Parameters for Rolling Upgrades" Collapse section "14.4. RemoteCacheStore Parameters for Rolling Upgrades" 14.4.1. rawValues and RemoteCacheStore 14.4.2. hotRodWrapping 15. MapReduce Expand section "15. MapReduce" Collapse section "15. MapReduce" 15.1. The MapReduce API Expand section "15.1. The MapReduce API" Collapse section "15.1. The MapReduce API" 15.1.1. MapReduceTask 15.1.2. Specify the Target Cache 15.1.3. Mapper and CDI 15.2. MapReduceTask Distributed Execution 15.3. Map Reduce Example 16. Distributed Execution Expand section "16. Distributed Execution" Collapse section "16. Distributed Execution" 16.1. Distributed Executor Service 16.2. DistributedCallable API 16.3. Callable and CDI 16.4. Distributed Task Failover 16.5. Distributed Task Execution Policy 16.6. Distributed Execution and Locality 16.7. Distributed Execution Example 17. Data Interoperability Expand section "17. Data Interoperability" Collapse section "17. Data Interoperability" 17.1. Interoperability Between Library and Remote Client-Server Endpoints 17.2. Using Compatibility Mode 17.3. Protocol Interoperability Expand section "17.3. Protocol Interoperability" Collapse section "17.3. Protocol Interoperability" 17.3.1. Use Cases and Requirements 17.3.2. Protocol Interoperability Over REST 18. Near Caching Expand section "18. Near Caching" Collapse section "18. Near Caching" 18.1. Lazy and Eager Near Caches 18.2. Configuring Near Caches 18.3. Near Caches Eviction 18.4. Near Caches in a Clustered Environment A. Revision History Legal Notice Settings Close Language: English Format: Multi-page Single-page PDF Format: Multi-page Single-page PDF Language and Page Formatting Options Language: English Format: Multi-page Single-page PDF Format: Multi-page Single-page PDF Developer Guide Red Hat JBoss Data Grid 6.5For use with Red Hat JBoss Data Grid 6.5.1 Misha Husnain Ali Red Hat Engineering Content Services mhusnain@redhat.comGemma Sheldon Red Hat Engineering Content Services gsheldon@redhat.comRakesh Ghatvisave Red Hat Engineering Content Services rghatvis@redhat.comChristian Huffman Red Hat Engineering Content Services chuffman@redhat.comLegal NoticeAbstract An advanced guide intended for developers using Red Hat JBoss Data Grid 6.5.1 Next