001: /**********************************************************************************
002: * $URL: https://source.sakaiproject.org/svn/user/tags/sakai_2-4-1/user-api/api/src/java/org/sakaiproject/user/api/UserEdit.java $
003: * $Id: UserEdit.java 14590 2006-09-14 15:50:15Z ajpoland@iupui.edu $
004: ***********************************************************************************
005: *
006: * Copyright (c) 2003, 2004,2005, 2006 The Sakai Foundation.
007: *
008: * Licensed under the Educational Community License, Version 1.0 (the "License");
009: * you may not use this file except in compliance with the License.
010: * You may obtain a copy of the License at
011: *
012: * http://www.opensource.org/licenses/ecl1.php
013: *
014: * Unless required by applicable law or agreed to in writing, software
015: * distributed under the License is distributed on an "AS IS" BASIS,
016: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
017: * See the License for the specific language governing permissions and
018: * limitations under the License.
019: *
020: **********************************************************************************/package org.sakaiproject.user.api;
021:
022: import org.sakaiproject.entity.api.Edit;
023:
024: /**
025: * <p>
026: * UserEdit is a mutable User object.
027: * </p>
028: */
029: public interface UserEdit extends User, Edit {
030: /**
031: * Set the user's id. Note: this is a special purpose routine that is used only to establish the id field, when the id is null, and cannot be used to change a user's id, which is defined to be an un-changing value.
032: *
033: * @param name
034: * The user id.
035: */
036: void setId(String id);
037:
038: /**
039: * Set the user's enterprise id. Must be unique among all users.
040: *
041: * @param eid
042: * The new eid value.
043: */
044: void setEid(String eid);
045:
046: /**
047: * Set the email address.
048: *
049: * @param email
050: * The email address string.
051: */
052: void setEmail(String email);
053:
054: /**
055: * Set the user's first name.
056: *
057: * @param name
058: * The user's first name.
059: */
060: void setFirstName(String name);
061:
062: /**
063: * Set the user's last name.
064: *
065: * @param name
066: * The user's last name.
067: */
068: void setLastName(String name);
069:
070: /**
071: * Set the user's password
072: *
073: * @param pw
074: * The user's new password.
075: */
076: void setPassword(String pw);
077:
078: /**
079: * Set the user type.
080: *
081: * @param type
082: * The user type.
083: */
084: void setType(String type);
085:
086: /**
087: * Make the user's first name unchangable during this edit
088: *
089: */
090: void restrictEditFirstName();
091:
092: /**
093: * Make the user's last name unchangable during this edit
094: *
095: */
096: void restrictEditLastName();
097:
098: /**
099: * Make the user's email address unchangable during this edit
100: *
101: */
102: void restrictEditEmail();
103:
104: /**
105: * Make the user's password unchangable during this edit
106: *
107: */
108: void restrictEditPassword();
109:
110: /**
111: * Make the user's type unchangable during this edit
112: *
113: */
114: void restrictEditType();
115:
116: }
|