JX Application Framework
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
JDirEntry Class Reference

#include <JDirEntry.h>

Public Types

enum  Type {
  kDoesNotExist = 0 ,
  kDir ,
  kFile ,
  kUnknown ,
  kDirLink ,
  kFileLink ,
  kBrokenLink ,
  kUnknownLink
}
 
enum  ModeBit {
  kOtherExec = 0 ,
  kOtherWrite ,
  kOtherRead ,
  kGroupExec ,
  kGroupWrite ,
  kGroupRead ,
  kUserExec ,
  kUserWrite ,
  kUserRead
}
 

Public Member Functions

 JDirEntry (const JString &fullName)
 
 JDirEntry (const JString &pathName, const JString &fileName)
 
 JDirEntry (const JDirEntry &source)
 
 ~JDirEntry ()
 
JDirEntryoperator= (const JDirEntry &source)
 
const JStringGetPath () const
 
const JStringGetName () const
 
const JStringGetFullName () const
 
bool GetLinkName (const JString **linkName) const
 
const JStringGetUserName () const
 
const JStringGetGroupName () const
 
Type GetType () const
 
bool IsFile () const
 
bool IsDirectory () const
 
bool IsLink () const
 
bool IsWorkingLink () const
 
bool IsBrokenLink () const
 
bool IsUnknown () const
 
JSize GetSize () const
 
mode_t GetMode () const
 
JError SetMode (const mode_t mode)
 
JError SetMode (const ModeBit bit, const bool allow)
 
JString GetModeString () const
 
bool IsReadable () const
 
bool IsWritable () const
 
bool IsExecutable () const
 
time_t GetModTime () const
 
time_t GetStatusTime () const
 
time_t GetAccessTime () const
 
JIndex GetUserID () const
 
JIndex GetGroupID () const
 
JDirEntry FollowLink () const
 
bool NeedsUpdate () const
 
bool Update (const bool force=false)
 
void ForceUpdate ()
 
bool MatchesContentFilter (const JRegex &regex, const JSize kBlockSize=1024) const
 

Static Public Member Functions

static std::weak_ordering CompareNames (JDirEntry *const &e1, JDirEntry *const &e2)
 
static std::weak_ordering CompareSizes (JDirEntry *const &e1, JDirEntry *const &e2)
 
static std::weak_ordering CompareModTimes (JDirEntry *const &e1, JDirEntry *const &e2)
 

Friends

class JDirInfo
 

Detailed Description

Class representing an item in a directory.

This class was not designed to be a base class.

Member Enumeration Documentation

◆ ModeBit

Enumerator
kOtherExec 
kOtherWrite 
kOtherRead 
kGroupExec 
kGroupWrite 
kGroupRead 
kUserExec 
kUserWrite 
kUserRead 

◆ Type

Enumerator
kDoesNotExist 
kDir 
kFile 
kUnknown 
kDirLink 
kFileLink 
kBrokenLink 
kUnknownLink 

Constructor & Destructor Documentation

◆ JDirEntry() [1/3]

JDirEntry::JDirEntry ( const JString fullName)

◆ JDirEntry() [2/3]

JDirEntry::JDirEntry ( const JString pathName,
const JString fileName 
)

◆ JDirEntry() [3/3]

JDirEntry::JDirEntry ( const JDirEntry source)

◆ ~JDirEntry()

JDirEntry::~JDirEntry ( )

Member Function Documentation

◆ CompareModTimes()

std::weak_ordering JDirEntry::CompareModTimes ( JDirEntry *const &  e1,
JDirEntry *const &  e2 
)
static

◆ CompareNames()

std::weak_ordering JDirEntry::CompareNames ( JDirEntry *const &  e1,
JDirEntry *const &  e2 
)
static

◆ CompareSizes()

std::weak_ordering JDirEntry::CompareSizes ( JDirEntry *const &  e1,
JDirEntry *const &  e2 
)
static

◆ FollowLink()

JDirEntry JDirEntry::FollowLink ( ) const

Returns a new object that describes what we point to. If we are not a link, we return a copy of ourselves.

◆ ForceUpdate()

void JDirEntry::ForceUpdate ( )

Updates the entry, regardless of whether or not it needs it.

◆ GetAccessTime()

time_t JDirEntry::GetAccessTime ( ) const
inline

◆ GetFullName()

const JString & JDirEntry::GetFullName ( ) const
inline

◆ GetGroupID()

JIndex JDirEntry::GetGroupID ( ) const
inline

◆ GetGroupName()

const JString & JDirEntry::GetGroupName ( ) const

◆ GetLinkName()

bool JDirEntry::GetLinkName ( const JString **  linkName) const
inline

◆ GetMode()

mode_t JDirEntry::GetMode ( ) const
inline

◆ GetModeString()

JString JDirEntry::GetModeString ( ) const

◆ GetModTime()

time_t JDirEntry::GetModTime ( ) const
inline

◆ GetName()

const JString & JDirEntry::GetName ( ) const
inline

◆ GetPath()

const JString & JDirEntry::GetPath ( ) const
inline

◆ GetSize()

JSize JDirEntry::GetSize ( ) const
inline

◆ GetStatusTime()

time_t JDirEntry::GetStatusTime ( ) const
inline

◆ GetType()

JDirEntry::Type JDirEntry::GetType ( ) const
inline

◆ GetUserID()

JIndex JDirEntry::GetUserID ( ) const
inline

◆ GetUserName()

const JString & JDirEntry::GetUserName ( ) const

◆ IsBrokenLink()

bool JDirEntry::IsBrokenLink ( ) const
inline

◆ IsDirectory()

bool JDirEntry::IsDirectory ( ) const
inline

◆ IsExecutable()

bool JDirEntry::IsExecutable ( ) const
inline

◆ IsFile()

bool JDirEntry::IsFile ( ) const
inline

◆ IsLink()

bool JDirEntry::IsLink ( ) const
inline

◆ IsReadable()

bool JDirEntry::IsReadable ( ) const
inline

◆ IsUnknown()

bool JDirEntry::IsUnknown ( ) const
inline

◆ IsWorkingLink()

bool JDirEntry::IsWorkingLink ( ) const
inline

◆ IsWritable()

bool JDirEntry::IsWritable ( ) const
inline

◆ MatchesContentFilter()

bool JDirEntry::MatchesContentFilter ( const JRegex regex,
const JSize  kBlockSize = 1024 
) const

This returns true for any file that matches the regex.

◆ NeedsUpdate()

bool JDirEntry::NeedsUpdate ( ) const

Returns true if the entry needs to be updated.

◆ operator=()

JDirEntry & JDirEntry::operator= ( const JDirEntry source)

◆ SetMode() [1/2]

JError JDirEntry::SetMode ( const mode_t  mode)

◆ SetMode() [2/2]

JError JDirEntry::SetMode ( const ModeBit  bit,
const bool  allow 
)

◆ Update()

bool JDirEntry::Update ( const bool  force = false)

If necessary, updates the entry. Returns true if the entry needed to be updated.

Friends And Related Symbol Documentation

◆ JDirInfo

friend class JDirInfo
friend

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