01: /**********************************************************************************
02: * $URL: https://source.sakaiproject.org/svn/user/tags/sakai_2-4-1/user-api/api/src/java/org/sakaiproject/user/api/Preferences.java $
03: * $Id: Preferences.java 7195 2006-03-29 03:03:28Z ggolden@umich.edu $
04: ***********************************************************************************
05: *
06: * Copyright (c) 2003, 2004, 2005, 2006 The Sakai Foundation.
07: *
08: * Licensed under the Educational Community License, Version 1.0 (the "License");
09: * you may not use this file except in compliance with the License.
10: * You may obtain a copy of the License at
11: *
12: * http://www.opensource.org/licenses/ecl1.php
13: *
14: * Unless required by applicable law or agreed to in writing, software
15: * distributed under the License is distributed on an "AS IS" BASIS,
16: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17: * See the License for the specific language governing permissions and
18: * limitations under the License.
19: *
20: **********************************************************************************/package org.sakaiproject.user.api;
21:
22: import java.util.Collection;
23:
24: import org.sakaiproject.entity.api.Entity;
25: import org.sakaiproject.entity.api.ResourceProperties;
26:
27: /**
28: * <p>
29: * Preferences stores keyed sets of properties for a given user (id).
30: * </p>
31: */
32: public interface Preferences extends Entity, Comparable {
33: /**
34: * Access the user of the user who owns these Preferences.
35: *
36: * @return The user id for these preferences.
37: */
38: String getId();
39:
40: /**
41: * Access the properties keyed by the specified value.
42: *
43: * @param key
44: * The key to the properties.
45: * @return The properties keyed by the specified value (possibly empty)
46: */
47: ResourceProperties getProperties(String key);
48:
49: /**
50: * Access the keys defined in this Preferences
51: *
52: * @return A Collection of the keys (String) defined in this Preferences.
53: */
54: Collection getKeys();
55: }
|