Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields  

clawsoft::Group Class Reference

#include <Group.h>

Inheritance diagram for clawsoft::Group:

Inheritance graph
[legend]
Collaboration diagram for clawsoft::Group:

Collaboration graph
[legend]

Detailed Description

This class deals with group management and also provides means to search the system's user group database.

STATUS: READY TO TEST


Public Methods

 Group ()
 This is the default constructor, it will initialize the internal groupid and groupname to the same one as the current executing process.

 Group (int gid)
 This will create a new Group object with groupid gid.

 Group (const String &gname)
 This will create a new Group object with groupname gname.

int getGroupID ()
 This will return the object's numeric group id.

const String & toString ()
 This will return the corresponding groupname as a string.


Static Public Methods

int getCurrentGroupID ()
 This will return the current process's group id.

int getGroupID (const String &gname)
 This will return the numeric group id corresponding to the string gname.

int getEffectiveGroupID ()
 This will give the numeric effective group id.

void setGroupID (int gid)
 This will set the current process group id to gid.

void setGroupID (const String &gname)
 This will set the current process group name to gname.

void setGroupID (const Group &grpobj)
 This will set the current process group to grpobj.

void setEffectiveGroupID (int gid)
 This will set the current process effective group id to gid.

void setEffectiveGroupID (const String &gname)
 This will set the current process effective group name to gname.

void setEffectiveGroupID (const Group &grpobj)
 This will set the current process effective group to grpobj.


Protected Methods

char * getGroupName (int gid)
 This method will return a groupname based on a numeric group id.

void getKernelInfo ()
 This method will update the name and information about the current running kernel.

const char * getUnixName ()
 Use this method to retreives the name of the UNIX version you are currently using.

const char * getNodeName ()
 This method will give you the nodename of your current host machine.

const char * getKernelRelease ()
 This will return your current kernel release string.

const char * getKernelReleaseVersion ()
 This will return your current kernel release version string.

const char * getHostMachine ()
 This will return your current architecture description.

void setClassName (const char *n)
 Call this method when you need to set the name of the class you're creating, typically in it's constructor, remember that you must set the classname for every class you create, that way you can have more information while debugging.

const char * getClassName ()
 Returns the name of the current class.


Static Protected Methods

int getuid ()
 Obtains the current (running) user id.

int getuid (const String &username)
 Obtain uid from username.

int getgid ()
 Obtains the current (running) user id.

int getgid (const String &groupname)
 Obtain uid from username.

int chown (const String &fname, int userid, int groupid=-1)
 Changes the owner of the file by its numeric userid.

int chown (const String &fname, const String &owner)
 Changes the owner of the file by its username.

int chgrp (const String &fname, int userid)
 Changes the group owner of the file by its numeric userid.

int chgrp (const String &fname, const String &groupname)
 Changes the group owner of the file by its groupname.

int installedCPUs ()
 This will return how many CPUs are installed in the system.

double cpuSpeed ()
 This will return the CPU speed in megahertz.

int totalMemory ()
 Will return the total amount of system memory.

int freeMemory ()
 Will return the total amount of free system memory.

void usleep (Uint32 usec)
 Will freeze the software for usec microseconds.


Protected Attributes

int _groupid
 Internal numeric group id reference member.

String _groupname
 Internal numeric group id reference member.

char * sysname
 Pointer to system name.


Constructor & Destructor Documentation

clawsoft::Group::Group (    ) 
 

This is the default constructor, it will initialize the internal groupid and groupname to the same one as the current executing process.

clawsoft::Group::Group (  int    gid ) 
 

This will create a new Group object with groupid gid.

clawsoft::Group::Group (  const String &    gname ) 
 

This will create a new Group object with groupname gname.


Member Function Documentation

int clawsoft::Unix::chgrp (  const String &    fname,
const String &    groupname
)  [static, inherited]
 

Changes the group owner of the file by its groupname.

int clawsoft::Unix::chgrp (  const String &    fname,
int    userid
)  [static, inherited]
 

Changes the group owner of the file by its numeric userid.

int clawsoft::Unix::chown (  const String &    fname,
const String &    owner
)  [static, inherited]
 

Changes the owner of the file by its username.

int clawsoft::Unix::chown (  const String &    fname,
int    userid,
int    groupid = -1
)  [static, inherited]
 

Changes the owner of the file by its numeric userid.

double clawsoft::System::cpuSpeed (    )  [static, inherited]
 

This will return the CPU speed in megahertz.

int clawsoft::System::freeMemory (    )  [static, inherited]
 

Will return the total amount of free system memory.

const char * clawsoft::Object::getClassName (    )  [inherited]
 

Returns the name of the current class.

int clawsoft::Group::getCurrentGroupID (    )  [static]
 

This will return the current process's group id.

int clawsoft::Group::getEffectiveGroupID (    )  [static]
 

This will give the numeric effective group id.

int clawsoft::Unix::getgid (  const String &    groupname )  [static, inherited]
 

Obtain uid from username.

int clawsoft::Unix::getgid (    )  [static, inherited]
 

Obtains the current (running) user id.

int clawsoft::Group::getGroupID (  const String &    gname )  [static]
 

This will return the numeric group id corresponding to the string gname.

int clawsoft::Group::getGroupID (    ) 
 

This will return the object's numeric group id.

char * clawsoft::Group::getGroupName (  int    gid )  [protected]
 

This method will return a groupname based on a numeric group id.

BE CAREFULL WHEN USING THIS FUNCTION AND ALLWAYS RELEASE THE POINTER IT RETURN IN ORDER TO PREVENT MEMORY LEAKS

const char * clawsoft::Unix::getHostMachine (    )  [inherited]
 

This will return your current architecture description.

void clawsoft::Unix::getKernelInfo (    )  [inherited]
 

This method will update the name and information about the current running kernel.

const char * clawsoft::Unix::getKernelRelease (    )  [inherited]
 

This will return your current kernel release string.

const char * clawsoft::Unix::getKernelReleaseVersion (    )  [inherited]
 

This will return your current kernel release version string.

const char * clawsoft::Unix::getNodeName (    )  [inherited]
 

This method will give you the nodename of your current host machine.

int clawsoft::Unix::getuid (  const String &    username )  [static, inherited]
 

Obtain uid from username.

int clawsoft::Unix::getuid (    )  [static, inherited]
 

Obtains the current (running) user id.

const char * clawsoft::Unix::getUnixName (    )  [inherited]
 

Use this method to retreives the name of the UNIX version you are currently using.

int clawsoft::System::installedCPUs (    )  [static, inherited]
 

This will return how many CPUs are installed in the system.

void clawsoft::Object::setClassName (  const char *    n )  [protected, inherited]
 

Call this method when you need to set the name of the class you're creating, typically in it's constructor, remember that you must set the classname for every class you create, that way you can have more information while debugging.

void clawsoft::Group::setEffectiveGroupID (  const Group &    grpobj )  [static]
 

This will set the current process effective group to grpobj.

void clawsoft::Group::setEffectiveGroupID (  const String &    gname )  [static]
 

This will set the current process effective group name to gname.

void clawsoft::Group::setEffectiveGroupID (  int    gid )  [static]
 

This will set the current process effective group id to gid.

void clawsoft::Group::setGroupID (  const Group &    grpobj )  [static]
 

This will set the current process group to grpobj.

void clawsoft::Group::setGroupID (  const String &    gname )  [static]
 

This will set the current process group name to gname.

void clawsoft::Group::setGroupID (  int    gid )  [static]
 

This will set the current process group id to gid.

const String & clawsoft::Group::toString (    ) 
 

This will return the corresponding groupname as a string.

int clawsoft::System::totalMemory (    )  [static, inherited]
 

Will return the total amount of system memory.

void clawsoft::System::usleep (  Uint32    usec )  [static, inherited]
 

Will freeze the software for usec microseconds.


Field Documentation

int clawsoft::Group::_groupid [protected]
 

Internal numeric group id reference member.

String clawsoft::Group::_groupname [protected]
 

Internal numeric group id reference member.

char* clawsoft::Unix::sysname [protected, inherited]
 

Pointer to system name.


The documentation for this class was generated from the following files:

Authors:

Juan V. Guerrero
Jannette C. Mejia
Juan C. Guevara

Powered by:

SourceForgeLogo