With Cache Collector 344 with Data Accessor 31 with Domain
Total Page:16
File Type:pdf, Size:1020Kb
NockIX.fm Page 445 Friday, August 8, 2003 2:06 PM Index A with Selection Factory 52, 201 Abstract Factory (pattern) with Update Factory 52, 224 with Cache Collector 344 Active Record (pattern) with Data Accessor 31 with Active Domain Object 52 with Domain Object Factory 213 ActiveDomainObject (class) with Selection Factory 201 participant in Active Domain Object with Update Factory 224 38–39 access plan 129 Adapter (pattern) Active Domain Object (pattern) 33–52 with Data Accessor 31 connection factory 43 with Layers 78, 93 connection management 42–43 Address (class) 4–5 connection pool 43 example in Active Domain Object 34– data model encapsulation 36–37, 40 36, 48–49, 50 data model inconsistency 34–37 example in Domain Object Factory 209–212 domain logic 41 aggregation 62–64 domain object attribute 41 Apache Software Foundation 65 domain object collection 41, 50–51 see also Object/Relational Bridge logical attribute 38 (OJB) logical operation 38 AS/400 161, 164, 166–167, 172 saved state 43–48 atomicity 380 with Active Record 52 attribute with Cache Accessor 280 changes 219 with Data Accessor 31, 52 domain object 215–219 with Domain Object Assembler 52, transaction 389–390 252 unmapped 61–62 with Domain Object Factory 52, 213 authorization 80 with Layers 52, 76, 78, 91–93 authorization (example) with Object/Relational Map 52, 73 example in Primed Cache 291–292, with Paging Iterator 52 301–303 with Resource Descriptor 169 AuthorizationData (class) with Resource Pool 49 445 NockIX.fm Page 446 Friday, August 8, 2003 2:06 PM 446 Index example in Primed Cache 301–303 collection AuthorizationKeyFactory (class) see Cache Collector (pattern) example in Primed Cache 302–303 complexity 270 configuration 362 B creation timestamp 336–338 badge reader system (example) debugging 361–362 example in Cache Search Sequence decoupled 271–272, 273 306–308, 312–314, 317–320, 322 demand BadgeAccessRecord (class) see Demand Cache (pattern) example in Cache Search Sequence description 365–370 306–308, 322 distributed notification 353 BaseConnectionDecorator (class) domain object 268–269 example in Resource Decorator 111– efficiency 362 114 encapsulation 275 example in Resource Pool 127, 130 expired data 325–344 example in Resource Timer 146, 154 fixed expiration 326, 328, 336–338 BasePreparedStatementDecorator (class) hash table 276 example in Resource Pool 132 heterogeneous notification 353 BaseResourceDecorator (class) hits 362, 365–370 participant in Resource Decorator 107, 109–110 housekeeping 269 BaseStatementDecorator (class) identity object 62 example in Resource Decorator 111– inactive expiration 326, 330, 338–341 115 initialization 268, 281–282, 285 bean-managed persistence (BMP) 52 interprocess notification 353 begin 381, 384, 388 key 268, 273–274, 276–279, 292–303 buffer 97 key access queue 338–343 key creation queue 336–338 C key generalization 310, 314, 317–322 cache last access timestamp 338–341 accesses 365–370 layer 79 accessor least-recently-used expiration 326, see Cache Accessor (pattern) 341–344 administration 276–277, 361–362 memory leak 285, 296, 331 candidate 281 metadata 328–330, 335 clear 276–277 minimal data set 285 coherency 346 notification 346–359 NockIX.fm Page 447 Friday, August 8, 2003 2:06 PM Index 447 operation 268 write operation 275 optimized data set 296 Cache (class) partial key 292–303 participant in Cache Accessor 273– patterns 267–270 277 persistence manager 62 participant in Cache Search Sequence placeholder entry 285, 296–297, 311, 309–311 315 participant in Demand Cache 283– population 268, 281–282, 284–285, 285 291–293 participant in Primed Cache 294–297 prime operation 292, 295–296, 298 Cache (interface) primed participant in Cache Replicator 350, see Primed Cache (pattern) 353 read operation 274, 284–287 Cache Accessor (pattern) 271–280 redundant notification 352 multiple instances 276 refresh 276–277 read operation 274 replication stale data 275 see Cache Replicator (pattern) transparency 273 result set data 105 with Active Domain Object 280 scope 275 with Cache Collector 326 search sequence with Cache Replicator 280, 359 see Cache Search Sequence (pat- with Cache Search Sequence 280, 315, tern) 323 shortcut entry 307–314, 316–317 with Cache Statistics 280, 370 size 365–370 with Data Accessor 273, 280 size threshold 341–343 with Demand Cache 274, 280, 283, 290 specific key 292–303 with Domain Object Assembler 252, stale data 275, 345–346 280 statement 125 with Layers 280 statement handle 129–135 with Object/Relational Map 280 statistics with Primed Cache 274, 280, 292, 304 see Cache Statistics (pattern) write operation 275 synchronization 332–333 Cache Collector (pattern) topology 347–349, 352–353 325–344 transparency 268, 273 collection strategy 326–344 utilitization 275 creation timestamp 336–338 visibility 268 daemon thread 331–335 NockIX.fm Page 448 Friday, August 8, 2003 2:06 PM 448 Index decoupled cache logic 326–328, 331 peer cache replicator 347–348 expired data 325–344 redundant notification 352 fixed expiration 326, 328, 336–338 replicated cache 347–356, 358–359 inactive expiration 326, 330, 338–341 scalability 346 initialization 343–344 stale data 345–346 key access queue 338–343 topology 347–349, 352–353 key creation queue 336–338 with Cache Accessor 280, 359 last access timestamp 338–341 with Decorator 350, 359 least-recently-used expiration 326, with Demand Cache 359 341–344 with Observer 359 metadata 328–330, 335 Cache Search Sequence (pattern) 305–323 multiple strategies 331 directed graph 314, 320–322 performance 332 key generalization 310, 314, 317–322 queue threshold 341–343 placeholder entry 311, 315 synchronization 332–333 sequence keys 309–317 thread 331–335 shortcut entry 307–314, 316–317 with Abstract Factory 344 with Cache Accessor 280, 315, 323 with Cache Accessor 326 with Cache Statistics 323 with Cache Statistics 344, 370 with Demand Cache 323 with Demand Cache 290, 344 with Primed Cache 323 with Primed Cache 304, 344 Cache Statistics (pattern) 361–370 with Strategy 344 accesses 365–370 Cache Replicator (pattern) 345–359 administration 361–362 central cache 348–349, 358–359 cache efficiency 362 centralized cache replicator 348–349, configuration 362 358–359 console interface 362, 369–370 clustering 346 current statistics 364, 367–368 coherency 346 debugging 361–362 decoupled replication logic 349, 352 decoupled presentation 362–363 distributed notification 353 description 365–370 event 347 graphical interface 362, 369–370 heterogeneous notification 353 hits 362, 365–370 interprocess notification 353 misses 365–370 Java event idiom 353 pool size 362 load balancing 346 resource leak 362 notification 346–359 snapshot statistics 366–368 NockIX.fm Page 449 Friday, August 8, 2003 2:06 PM Index 449 with Cache Accessor 280, 370 CacheEntryFactory (interface) with Cache Collector 344, 370 example in Cache Collector 332–344 with Cache Search Sequence 323 participant in Cache Collector 327– with Demand Cache 370 329, 344 with Model-View-Controller 370 CacheReplicator (class) with Primed Cache 370 participant in Cache Replicator 350– with Resource Pool 136, 370 353 CacheAccessor (class) CacheSearchSequence (class) example in Cache Accessor 277–279 example in Cache Search Sequence 315–317, 322 example in Cache Collector 332–335, 343–344 participant in Cache Search Sequence 309–311 example in Cache Search Sequence 315–316 CacheUpdateEvent (class) example in Cache Statistics 368–369 example in Cache Replicator 357–358 example in Demand Cache 286–287, CacheUpdateListener (interface) 289 example in Cache Replicator 353–359 example in Primed Cache 297–303 CacheUpdateObserver (interface) participant in Cache Accessor 273– participant in Cache Replicator 350 277 call records (example) participant in Cache Search Sequence example in Pessimistic Lock 405–407, 309–311 411–414 participant in Demand Cache 283– CallRecord (class) 285 example in Pessimistic Lock 411–414 participant in Primed Cache 293–297 CALLS (table) CacheAccessor (interface) example in Pessimistic Lock 406, participant in Cache Collector 327– 411–414 331 centralized cache replicator 348–349, CacheCollector (interface) 358–359 example in Cache Collector 332–344 Chain of Responsibility (pattern) participant in Cache Collector 327– with Layers 93 331 with Resource Decorator 116 CachedStatement (class) change identifier 400 example in Resource Pool 130–134 clustering 346 CacheEntry (interface) CollectionStatistics (class) example in Cache Collector 334–343 example in Cache Statistics 367–369 participant in Cache Collector 327– column list 207–208 330 Command (pattern) NockIX.fm Page 450 Friday, August 8, 2003 2:06 PM 450 Index with Data Accessor 31 example in Data Accessor 21–29 with Retryer 176–177, 183 example in Layers 89–91 commit 381, 384–385, 388, 392–393 concurrency Compensatable (interface) dirty read 374, 388–389, 391 example in Compensating Transac- missing update 373–374, 388–389, tion 424–429 396–397, 406–408, 419, 424 participant in Compensating Trans- non-repeatable read 374, 388–389 action 421–422 patterns 371–377 compensatable operation phantom read 374–375, 388–389 see Compensating Transaction (pat- problems 373–375 tern) resource 97, 99–100 compensating serialization 375–376 see Compensating Transaction (pat- solutions 375–376 tern) timer 375 Compensating Transaction (pattern) unit of work 371–376 417–430 working copy 372–377 compensatable operation 419–429 configuration data 281–282 compensate 421–422, 424–429 connection 98 compensating 419–429 close 124 create operation 424 factory 43 delete operation 424 initialization