forked from emigonza/JavaPOS
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDefaultProfileRegistry.java
More file actions
98 lines (81 loc) · 3.66 KB
/
Copy pathDefaultProfileRegistry.java
File metadata and controls
98 lines (81 loc) · 3.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
package jpos.profile;
///////////////////////////////////////////////////////////////////////////////
//
// This software is provided "AS IS". The JavaPOS working group (including
// each of the Corporate members, contributors and individuals) MAKES NO
// REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE SOFTWARE,
// EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
// WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NON-INFRINGEMENT. The JavaPOS working group shall not be liable for
// any damages suffered as a result of using, modifying or distributing this
// software or its derivatives. Permission to use, copy, modify, and distribute
// the software and its documentation for any purpose is hereby granted.
//
// The JavaPOS Config/Loader (aka JCL) is now under the CPL license, which
// is an OSS Apache-like license. The complete license is located at:
// http://oss.software.ibm.com/developerworks/opensource/license-cpl.html
//
///////////////////////////////////////////////////////////////////////////////
import java.util.*;
/**
* Default implementation of the ProfileRegistry using a Hashtable
* @since 1.3 (SF 2K meeting)
* @author E. Michael Maximilien ([email protected])
*/
public class DefaultProfileRegistry extends Object implements ProfileRegistry
{
//-------------------------------------------------------------------------
// Ctor(s)
//
/** Default ctor*/
public DefaultProfileRegistry() {}
//-------------------------------------------------------------------------
// Public methods
//
/** @return the size of the registry */
public int getSize() { return table.size(); }
/** @return true if the registry is empty or not */
public boolean isEmpty() { return table.isEmpty(); }
/**
* @return true if there is an Profile with the specified logical name
* @param profileName the unique name of this profile
*/
public boolean hasProfile( String profileName ) { return table.containsKey( profileName ); }
/**
* @return true if there is an Profile with the specified logical name
* @param profile the profile
*/
public boolean hasProfile( Profile profile ) { return table.containsValue( profile ); }
/** @return an enumeration of Profile objects */
public Enumeration getProfiles() { return table.elements(); }
/**
* @return the Profile for the profileName specified
* @param profileName the unique name of this profile
*/
public Profile getProfile( String profileName ) { return (Profile)table.get( profileName ); }
/**
* Add an Profile for the service with logical name specified
* @param profile the profile
*/
public void addProfile( Profile profile ) { table.put( profile.getName(), profile ); }
/**
* Add an Profile for the service with logical name specified
* @param profileName the unique name of this profile
* @param profile the profile
*/
public void addProfile( String profileName, Profile profile ) { table.put( profileName, profile ); }
/**
* Removes the specified Profile
* @param profile the profile to remove
*/
public void removeProfile( Profile profile ) { table.remove( profile.getName() ); }
/**
* Removes the Profile with the profileName specified
* @param profileName the unique name of this profile
*/
public void removeProfile( String profileName ) { table.remove( profileName ); }
//-------------------------------------------------------------------------
// Instance varaibles
//
private Hashtable table = new Hashtable();
}