CASA/c_micasad/common/User.cs

73 lines
2.0 KiB
C#
Raw Normal View History

/***********************************************************************
*
* Copyright (C) 2005-2006 Novell, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; version 2.1
* of the License.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* To contact Novell about this file by physical or electronic mail,
* you may find current contact information at www.novell.com.
*
***********************************************************************/
using System;
using System.IO;
using sscs.cache;
namespace sscs.common
{
abstract class User
{
protected UserIdentifier userId;
public UserIdentifier UserIdentifier
{
get
{
return userId;
}
}
protected SecretStore secretStore;
protected string home;
/* Change the protection level after getting the latest requirements */
protected string userName = null;
abstract internal void SetUserName(string userName);
abstract internal string GetUserName();
abstract internal string GetUserHomeDir();
internal SecretStore GetSecretStore()
{
return secretStore;
}
internal static User CreateUser(UserIdentifier userId)
{
User user = null;
#if LINUX
user = new UnixUser(userId);
#endif
#if W32
user = new WinUser(userId);
#endif
return user;
}
}
}