diff --git a/c/CtrlCheckLinks.rb b/c/CtrlCheckLinks.rb
index 040c03f..5ab2b21 100644
--- a/c/CtrlCheckLinks.rb
+++ b/c/CtrlCheckLinks.rb
@@ -1,22 +1,25 @@
-# Controleur de la vérification de la validité des liens ainsi que les vues correspondantes
+# Controleur de la vérification de la validité des liens ainsi que la vue Vue1 et VueResult
class CtrlCheckLinks
- #Controleur de la saisie pour vérification de lien
- def saisie(type)
- @v1 = Vue1.new(self, 'Saisie nom fichier', type) #creation vue principal
+ # Controleur de la saisie pour vérification de lien, controleur Vue1
+ # * int type : permet de modifier la vue si 1 -> fichier sinon dossier
+ # * string title : titre fenetre de la vue qui va etre genere
+ # * return : String des urls trouvés
+ def saisie(type, title)
+ @v1 = Vue1.new(self, title, type) #creation vue principal
@v1.getWindow.show_all # affichage
Gtk.main
- return @urls
end
- #Controleur recuperation et verification de liens dans 1 fichiers
+ # Controleur de recuperation et verification de liens dans 1 fichiers
+ # * string str : chemin d'accès au fichier à traiter
def recupUrls(str)
f = ReadFile.new(str)
@urls = f.getUrls
self.vueResult(self.verifLiens(@urls), str)
s = CtrlHistoLink.new #on enregistre dans l'histo le verif du lien
s.sauv(str, @urls)
- return @urls
end
- #Controleur recuperation et verification de liens dans 1 dossier
+ # Controleur de recuperation et verification de liens dans 1 dossier
+ # * string str : chemin d'accès au fichier à traiter
def recupUrlsDoss(str)
d = Dir.open(str)
liste_exclus = [".", ".."]
@@ -27,12 +30,14 @@ class CtrlCheckLinks
end
}
end
- #Controleur permettant de detruire la vue principal
+ # Controleur permettant de detruire la vue Vue1
def destructionFen
@v1.getWindow.destroy
Gtk.main_quit
end
- #Controleur de verification de liens
+ # Controleur de verification de liens
+ # * string[] : tableau des urls à vérifier
+ # * return : string contenant le resultat des pings
def verifLiens(urls)
resultats = ""
urls.each { |n| # pour chaque urls on realise un ping -> mise des resultats en chaine de caractere
@@ -44,13 +49,13 @@ class CtrlCheckLinks
end
}
return resultats
-
end
- #Controleur permettant d'afficher la vue secondaire d'affichage de resultat
+ # Controleur permettant d'afficher la vue secondaire d'affichage de resultats, controleur VueResult
+ # * string resultats : contient les resultats à affiché
+ # * string nom : nom du fichier qui contient les urls traités
def vueResult(resultats, nom)
v = VueResult.new(resultats, nom)
v.getWindow.show_all
Gtk.main
-
end
end
\ No newline at end of file
diff --git a/c/CtrlHistoLink.rb b/c/CtrlHistoLink.rb
index 4c79215..8696b56 100644
--- a/c/CtrlHistoLink.rb
+++ b/c/CtrlHistoLink.rb
@@ -1,27 +1,29 @@
-#Classe permettant de g"rer l'historique de fichier traité
+#Classe permettant de gzrer l'historique de fichier traité et la vue VueHisto
class CtrlHistoLink
- #Saisie pour vérification de lien stocké en historique
+ # Saisie pour vérification de lien stocké en historique, controleur VueHisto
def saisie
@v = VueHisto.new(self,"Historique") #creation vue
@v.getWindow.show_all # affichage
Gtk.main
- return @urls
end
- #Sauvegarde les liens dans un fichier pour historique
- def sauv(fileName, urls)
- fileName = File.basename(fileName)
- f = File.new("../sauv/#{fileName}", "w+")
+ # Sauvegarde les liens dans un fichier pour historique
+ # * String pathName : chemin du fichier à mettre en historique
+ # * String urls : liste urls à sauver dans l'historique
+ def sauv(pathName, urls)
+ pathName = File.basename(pathName)
+ f = File.new("../sauv/#{pathName}", "w+")
f.write(urls)
f.close
end
- #Permet de rejouer les liens d'un fichier
- def rejouer(fileName)
+ # Permet de rejouer les liens d'un fichier
+ # * Sting pathName : chemin du fichier de l'historique à rejouer
+ def rejouer(pathName)
r = CtrlCheckLinks.new
- @urls = r.recupUrls(fileName)
+ @urls = r.recupUrls(pathName)
end
- #Controleur permettant de detruire la vue historique
+ # Controleur permettant de detruire la vue historique
def destructionFen
@v.getWindow.destroy
Gtk.main_quit
diff --git a/c/Main.rb b/c/Main.rb
index 3d9374d..68a0536 100755
--- a/c/Main.rb
+++ b/c/Main.rb
@@ -13,35 +13,40 @@ require '../v/VueResult'
require '../v/VueMenu'
require '../v/VueHisto'
-#Classe principal du controleur main
-class Main
- # Controleur du menu de départ
- def menu
-
+#Controleur du menu principal de l'application
+class Menu
+ # Controleur du menu d'acceuil VueMenu
+ def initialize
@v = VueMenu.new(self,"Menu")
@v.getWindow.show_all # affichage
Gtk.main
end
- # Controleur historique
+ # Acces au controleur CtrlHistoLink
def histo
+ @v.getWindow.hide_all #cache le menu
c = CtrlHistoLink.new
urls = c.saisie
+ @v.getWindow.show_all #reaffiche le menu
end
- # Controleur vérification d'un fichier
+ # Acces au controleur vérification d'un fichier CtrlCheckLinks
def newVerifFile
+ @v.getWindow.hide_all #cache le menu
c = CtrlCheckLinks.new
- urls = c.saisie(1)
+ urls = c.saisie(1, 'Saisie nom fichier')
+ @v.getWindow.show_all #reaffiche le menu
end
- # Controleur vérification d'un dossier
+ # Acces au controleur vérification d'un dossier CtrlCheckLinks
def newVerifDossier
+ @v.getWindow.hide_all #cache le menu
c = CtrlCheckLinks.new
- urls = c.saisie(0)
+ urls = c.saisie(0, 'Saisie nom dossier')
+ @v.getWindow.show_all #reaffiche le menu
end
- # Controleur permettant de detruire la vue menu
+ # Controleur permettant de detruire la VueMenu
def destructionMenu
@v.getWindow.destroy
Gtk.main_quit
@@ -49,7 +54,6 @@ class Main
end
-c = Main.new
-c.menu
+Menu.new
print "Termine\n"
\ No newline at end of file
diff --git a/doc/rdoc/CtrlCheckLinks.html b/doc/rdoc/CtrlCheckLinks.html
new file mode 100644
index 0000000..3f01594
--- /dev/null
+++ b/doc/rdoc/CtrlCheckLinks.html
@@ -0,0 +1,422 @@
+
+
+
+
+# File c/CtrlCheckLinks.rb, line 41
+defverifLiens(urls)
+ resultats = ""
+ urls.each { |n|# pour chaque urls on realise un ping -> mise des resultats en chaine de caractere
+ p = Net::Ping::HTTP.newn , 80, 5
+ ifp.ping?
+ resultats+="#{n} est vivant\n"
+ else
+ resultats+="#{n} est mort\n"
+ end
+ }
+ returnresultats
+end
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ vueResult(resultats, nom)
+ click to toggle source
+
+
+
+
+
+
Controleur permettant d'afficher la vue secondaire d'affichage de
+resultats, controleur VueResult
+
+
string resultats : contient les resultats à affiché
+
+
string nom : nom du fichier qui contient les urls traités
+
+
+
+
+
+
+# File c/CtrlCheckLinks.rb, line 56
+defvueResult(resultats, nom)
+ v = VueResult.new(resultats, nom)
+ v.getWindow.show_all
+ Gtk.main
+end
+# File c/Main.rb, line 26
+defhisto
+ @v.getWindow.hide_all#cache le menu
+ c = CtrlHistoLink.new
+ urls = c.saisie
+ @v.getWindow.show_all#reaffiche le menu
+end
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ newVerifDossier()
+ click to toggle source
+
+
+
+
+
+
Acces au controleur vérification d’un dossier CtrlCheckLinks
+
+
+
+
+
+# File c/Main.rb, line 42
+defnewVerifDossier
+ @v.getWindow.hide_all#cache le menu
+ c = CtrlCheckLinks.new
+ urls = c.saisie(0, 'Saisie nom dossier')
+ @v.getWindow.show_all#reaffiche le menu
+end
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ newVerifFile()
+ click to toggle source
+
+
+
+
+
+
Acces au controleur vérification d’un fichier CtrlCheckLinks
+
+
+
+
+
+# File c/Main.rb, line 34
+defnewVerifFile
+ @v.getWindow.hide_all#cache le menu
+ c = CtrlCheckLinks.new
+ urls = c.saisie(1, 'Saisie nom fichier')
+ @v.getWindow.show_all#reaffiche le menu
+end
+
+
+
diff --git a/m/ReadFile.rb b/m/ReadFile.rb
index e6af677..34892aa 100644
--- a/m/ReadFile.rb
+++ b/m/ReadFile.rb
@@ -1,15 +1,18 @@
#Classe permettant l'acces et la recuperation des données dans les fichiers
class ReadFile
- #Ouverture d'un fichier en lecture
+ # Ouverture d'un fichier en lecture
+ # * String pFic : chemin de fichier à ouvrir
def initialize(pFic)
@fic = File.open(pFic, "r")
end
- #Revoit tout le contenu d'un fichier sous forme d'une chaine de caractere
+ # Revoit tout le contenu d'un fichier sous forme d'une chaine de caractere
+ # * return : string contenant tout le texte du fichier
def getALL
all = @fic.read
return all
end
- #Sort les URLs d'un fichier
+ # Sort les URLs d'un fichier
+ # * return : string[] contenant tout les liens http/https du fichier
def getUrls
txt = self.getALL
url = URI::extract(txt, /http(s)?/)
diff --git a/v/Vue1.rb b/v/Vue1.rb
index 673609a..53229bf 100644
--- a/v/Vue1.rb
+++ b/v/Vue1.rb
@@ -1,6 +1,9 @@
# Classe creation de la vue de sélection de fichier ou dossier
class Vue1
- # Creation de la vue
+ # Creation de la vue
+ # * CtrlCheckLinks ctrl : controleur de la vue
+ # * String title : titre de la vue
+ # * int type : vue pour un fichier (==1) sinon pour un dossier
def initialize(ctrl, title, type)
@ctrl = ctrl
#fenenetre generale
@@ -11,11 +14,11 @@ class Vue1
vb = Gtk::VBox.new(true, 6)
bot = Gtk::HBox.new(false, 6)
- #creation label pour la saisie
+ #creation de label pour la saisie
lab = Gtk::Label.new('Chemin :')
bot.pack_start(lab, false, true, 6)
- #creation champ de saisie
+ #creation du champ de saisie
#@nom = Gtk::Entry.new
if (type == 1)
@nom = Gtk::FileChooserButton.new("choisir un fichier", Gtk::FileChooser::ACTION_OPEN)
@@ -46,14 +49,14 @@ class Vue1
return @chaine
end
- # Listener fermeture fenetre
+ # Listener fermeture fenetre
def listenerDestroy
@window.signal_connect('destroy') {
@ctrl.destructionFen
}
end
- #Listener appuie bouton validation
+ # Listener appuie bouton validation -> test liens fichier
def listenerBouton
@chaine = " "
@b.signal_connect('clicked'){
@@ -66,10 +69,10 @@ class Vue1
m.run
m.destroy
else
- if(File.directory?(@chaine)) #si c'est un dossier utilisation du controleur adéquat
+ if(File.directory?(@chaine)) #si c'est un dossier -> utilisation du controleur adéquat
@ctrl.recupUrlsDoss(@chaine)
else
- if(File.exist?(@chaine)) #si c'est un fichier existant utilisation du controleur adéquat
+ if(File.exist?(@chaine)) #si c'est un fichier -> existant utilisation du controleur adéquat
@ctrl.recupUrls(@chaine)
else #gestion saisie invalide
d = Gtk::MessageDialog.new(Gtk::Window.new, Gtk::Dialog::DESTROY_WITH_PARENT,
diff --git a/v/VueHisto.rb b/v/VueHisto.rb
index aec9486..990c30d 100644
--- a/v/VueHisto.rb
+++ b/v/VueHisto.rb
@@ -1,6 +1,8 @@
# Classe creation de la vue permettant d'aceder a l'historique
class VueHisto
- # Creation de la vue
+ # Creation de la vue
+ # * CtrlCheckHisto ctrl : controleur de la vue
+ # * String title : titre de la vue
def initialize(ctrl, title)
@ctrl = ctrl
#fenenetre generale
@@ -41,14 +43,14 @@ class VueHisto
return @chaine
end
- # Listener fermeture fenetre
+ # Listener fermeture fenetre
def listenerDestroy
@window.signal_connect('destroy') {
@ctrl.destructionFen
}
end
- #Listener appuie bouton validation
+ # Listener appuie bouton validation -> test liens fichier
def listenerBouton
@chaine = " "
@b.signal_connect('clicked'){
diff --git a/v/VueMenu.rb b/v/VueMenu.rb
index 179c0b8..3d65f48 100644
--- a/v/VueMenu.rb
+++ b/v/VueMenu.rb
@@ -1,6 +1,8 @@
#Classe creation vue du menu
class VueMenu
- # Creation de la vue
+ # Creation de la vue
+ # * Menu ctrl : controleur de la vue
+ # * String title : titre de la vue
def initialize(ctrl, title)
@ctrl = ctrl
#fenenetre generale
@@ -36,25 +38,25 @@ class VueMenu
def getWindow #:nodoc:#
return @window
end
- #Listener appuie bouton nouvelle vérification de 1 fichier
+ # Listener appuie bouton nouvelle vérification de 1 fichier
def listenerBoutonNewFile
@newFile.signal_connect('clicked'){
@ctrl.newVerifFile
}
end
- #Listener appuie bouton validation nouvelle vérification de 1 dossier
+ # Listener appuie bouton validation nouvelle vérification de 1 dossier
def listenerBoutonNewDossier
@newDoss.signal_connect('clicked'){
@ctrl.newVerifDossier
}
end
- #Listener appuie bouton validation pour rejouer un fichier dans de l'historique
+ # Listener appuie bouton validation pour rejouer un fichier dans de l'historique
def listenerBoutonHisto
- @histo.signal_connect('clicke d'){
+ @histo.signal_connect('clicked'){
@ctrl.histo
}
end
- # Listener fermeture fenetre Menu
+ # Listener fermeture fenetre Menu
def listenerDestroy
@window.signal_connect('destroy') {
@ctrl.destructionMenu
diff --git a/v/VueResult.rb b/v/VueResult.rb
index 41dd848..78d7761 100644
--- a/v/VueResult.rb
+++ b/v/VueResult.rb
@@ -1,10 +1,12 @@
# Classe creation de la vue des resultats
class VueResult
- # Creation de la vue
- def initialize(liste_result, nom)
+ # Creation de la vue
+ # * String liste_result : contient les resultats a afficher
+ # * String title : titre de la vue
+ def initialize(liste_result, title)
#fenenetre generale
@window = Gtk::Window.new
- @window.set_title(nom)
+ @window.set_title(title)
#declaration des differents widgets
vb = Gtk::VBox.new(true, 6)
@@ -28,7 +30,7 @@
return @window
end
- # Listener fermeture Resultat
+ # Listener fermeture Resultat
def listenerDestroy
@window.signal_connect('destroy') {
@window.destroy