Google
Web alhem.net
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

Mime Class Reference

#include <Mime.h>

List of all members.

Public Member Functions

 Mime (const std::string &)
 ~Mime ()
std::string GetMimeFromFile (const std::string &)
std::string GetMimeFromExtension (const std::string &)

Private Attributes

mime_m m_mime


Constructor & Destructor Documentation

Mime::Mime const std::string &  filename  ) 
 

File ......... Mime.cpp Published .... 2004-07-09

Definition at line 30 of file Mime.cpp.

References m_mime, and Mime().

Referenced by Mime().

00031 { 00032 FILE *fil; 00033 if ((fil = fopen(filename.c_str(),"rt")) != NULL) 00034 { 00035 char slask[1000]; 00036 fgets(slask,1000,fil); 00037 while (!feof(fil)) 00038 { 00039 while (strlen(slask) && (slask[strlen(slask) - 1] == 13 || slask[strlen(slask) - 1] == 10)) 00040 { 00041 slask[strlen(slask) - 1] = 0; 00042 } 00043 cgi::Parse pa(slask); 00044 pa.getword(slask); 00045 std::string mime_type = slask; //pa.getword(); 00046 pa.getword(slask); 00047 std::string ext = slask; //pa.getword(); 00048 while (ext.size()) 00049 { 00050 m_mime[ext] = mime_type; 00051 pa.getword(slask); 00052 ext = slask; //pa.getword(); 00053 } 00054 // 00055 fgets(slask,1000,fil); 00056 } 00057 fclose(fil); 00058 } 00059 else 00060 { 00061 // fprintf(stderr,"Couldn't open file '%s'...\n",filename.c_str()); 00062 } 00063 }

Mime::~Mime  ) 
 

Definition at line 66 of file Mime.cpp.

00067 { 00068 }


Member Function Documentation

std::string Mime::GetMimeFromExtension const std::string &   ) 
 

Definition at line 71 of file Mime.cpp.

References GetMimeFromExtension(), and m_mime.

Referenced by GetMimeFromExtension(), and GetMimeFromFile().

00072 { 00073 std::string mime = m_mime[ext]; 00074 return mime; 00075 }

std::string Mime::GetMimeFromFile const std::string &   ) 
 

Definition at line 78 of file Mime.cpp.

References GetMimeFromExtension(), and GetMimeFromFile().

Referenced by GetMimeFromFile(), and FinderHandler::GetMimeFromFile().

00079 { 00080 size_t x = 0; 00081 for (size_t i = 0; i < name.size(); i++) 00082 if (name[i] == '.') 00083 x = i; 00084 std::string ext = name.substr(x + 1); 00085 00086 return GetMimeFromExtension(ext); 00087 }


Member Data Documentation

mime_m Mime::m_mime [private]
 

Definition at line 41 of file Mime.h.

Referenced by GetMimeFromExtension(), and Mime().


The documentation for this class was generated from the following files:
Generated on Thu Feb 10 22:42:40 2005 for Distributed URL Classification Tool by doxygen 1.3.7