View Javadoc

1   /*
2    * Copyright 2004 Charles Blaxland
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    *     http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package mnemosyne.core;
17  
18  
19  
20  /***
21   * @version $Id: ArchiveContext.java,v 1.1.1.1 2004/08/07 06:40:57 charlesblaxland Exp $
22   */
23  public class ArchiveContext
24  {
25      private AggregatedTransaction aggregatedTransaction;
26      private PersistentObjectFactory persistentObjectFactory;
27  
28      private static ThreadLocal theArchiveContext = new ThreadLocal()
29      {
30          protected Object initialValue()
31          {
32              return new ArchiveContext();
33          }
34      };
35  
36      public PersistentObjectFactory getPersistentObjectFactory()
37      {
38          return persistentObjectFactory;
39      }
40  
41      public void setPersistentObjectFactory(PersistentObjectFactory persistentObjectFactory)
42      {
43          this.persistentObjectFactory = persistentObjectFactory;
44      }
45  
46      public AggregatedTransaction getAggregatedTransaction()
47      {
48          return aggregatedTransaction;
49      }
50  
51      public void setAggregatedTransaction(AggregatedTransaction aggregatedTransaction)
52      {
53          this.aggregatedTransaction = aggregatedTransaction;
54      }
55  
56      public static ArchiveContext get()
57      {
58          return (ArchiveContext) theArchiveContext.get();
59      }
60  
61  }