-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cutter.cpp
103 lines (80 loc) · 3.16 KB
/
Cutter.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
/*************************************************************************
Cutter - description
-------------------
début : 19 janvier 2019
copyright : (C) 2019 par Ludovic Richoux
e-mail : [email protected]
*************************************************************************/
//---------- Réalisation de la classe <Cutter> (fichier Cutter.cpp) ------------
//---------------------------------------------------------------- INCLUDE
//-------------------------------------------------------- Include système
#include <iostream>
#include <string>
using namespace std;
//------------------------------------------------------ Include personnel
#include "Cutter.h"
//------------------------------------------------------------- Constantes
//----------------------------------------------------------------- PUBLIC
//----------------------------------------------------- Méthodes publiques
void Cutter::setlogLine(string uneLigne)
{
logLine = uneLigne;
}//---------- Fin de la méthode setlogLine
string Cutter::getDate()
{
int debutDate = logLine.find_first_of('[') + 1;
int finDate = logLine.find_first_of(' ',debutDate);
int dateLength = finDate - debutDate;
string date = logLine.substr(debutDate,dateLength);
return date;
} //----- Fin de Méthode getDate
string Cutter::getCible()
{
int debutReq = logLine.find_first_of('"') + 1;
int finReq = logLine.find_first_of('"' , debutReq);
int debutCible = logLine.find_first_of('/', debutReq);
int finCible = logLine.find_last_of(' ', finReq);
int cibleLength = finCible - debutCible;
string cible = logLine.substr(debutCible,cibleLength);
return cible;
} //----- Fin de Méthode getCible
string Cutter::getReferer()
{
int debutReq = logLine.find_first_of('"') + 1;
int finReq = logLine.find_first_of('"' , debutReq);
int debutReferer = logLine.find_first_of('"',finReq + 1) + 1;
int finReferer = logLine.find_first_of('"', debutReferer);
string referer = logLine.substr(debutReferer, finReferer - debutReferer);
return referer;
} //----- Fin de Méthode getReferer
int Cutter::getHour()
{
string date = getDate();
string hour = date.substr(12,2);
int heure = stoi(hour);
return heure;
}//----- Fin de la méthode getHour
string Cutter::getExtension()
{
string cible = getCible();
int positionPoint = cible.find_last_of('.') + 1;
int posFinChaine = cible.size();
string extension = cible.substr(positionPoint, posFinChaine-positionPoint);
return extension;
}//----- Fin de la méthode getExtension
//----------------------------------------------------- Constructeurs - Destructeurs
Cutter::Cutter (string lignelog )
{
#ifdef MAP
cout << "Appel au constructeur de <Cutter>" << endl;
#endif
logLine = lignelog;
} //----- Fin de Cutter
Cutter::~Cutter ( )
{
#ifdef MAP
cout << "Appel au destructeur de <Cutter>" << endl;
#endif
} //----- Fin de ~Cutter
//------------------------------------------------------------------ PRIVE
//----------------------------------------------------- Méthodes protégées