#pragma once

#include <stdio.h>
#include <strstream>
#include <string>
using namespace std;

class MonFichier{

protected:
                string ReadingPath  ;
                string NomDuFichier;
                string Size      ;
               

				CStdioFile* File;
				CInternetSession *inetSession;

				int Local_Remote_Unknown; //0 file is local, 1 file is remote, 2 file is unknown 
				

				void setParameters(){
					if(!File) return;
						setSize();
						setNom();
				}

				
				//Determine la taille du fichier en octet
				//et stocke la valeur sous forme de string dans la variable size
				void setSize();
				
				//Determine le nom du fichier
				//et stocke la valeur sous forme de string dans la variable  NomDuFichier
				void setNom();

				//Utilitaires
				string intToString(int Num){
					ostrstream temp;
					temp<<Num<<ends;
					return temp.str();
				};

				string CorrectNewLine(char a)const{		
					if(a == 10) 
						return  (string)"\r\n";
					else
						return ((string)"")+a;
				};

public:
			MonFichier(string m_ReadingPath);	
			
			//vrai si le fichier existe localement
			bool IsLocal() const{return Local_Remote_Unknown == 0;};	
			//vrai si le fichier existe sur un server	auquel on peut acceder	
			bool IsRemote() const{return Local_Remote_Unknown == 1;};
			
			string getSize() const {return Size;};
			string getNom() const {return NomDuFichier;};
			string getContenu() const;
			~MonFichier(void);

};
