AT&T 2.0.19 Code drop, stage 1
[aaf/authz.git] / misc / env / src / main / java / org / onap / aaf / misc / env / TransStore.java
1 /**
2  * ============LICENSE_START====================================================
3  * org.onap.aaf
4  * ===========================================================================
5  * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
6  * ===========================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END====================================================
19  *
20  */
21
22 package org.onap.aaf.misc.env;
23
24 public interface TransStore extends Trans {
25         /**
26          * Returns the Slot assigned to the supplied name.
27          * 
28          * @param name
29          *                      The name of the Slot to acquire.
30          * @return
31          *                      The Slot associated with the supplied name.
32          */
33         public abstract Slot slot(String name);
34         
35         /**
36          * Put data into the right slot 
37          */
38         public void put(Slot slot, Object value);
39
40         /**
41          *  Get data from the right slot
42          *  
43          *  This will do a cast to the expected type derived from Default
44          */
45         public<T> T get(Slot slot, T deflt);
46
47         /**
48          * Returns an Object from the Organizer's static state, or the Default if null
49          * 
50          * @param slot
51          *                      The StaticSlot to retrieve the data from.
52          * @return
53          *                      The Object located in the supplied StaticSlot of the Organizer's static state.
54          */
55         public abstract<T> T get(StaticSlot slot, T dflt);
56         
57 }