Biblioteka election umozliwia tworzenie wlasnych wyborow parlamentarnych / prezydenckich.
Biblioteka opcjonalnie umozliwia wielowatkowe ladowanie danych z rzadowych serwerow PKW z ostatnich wyborow prezydenckich (dla kazdej komisji) a pozniej przetwarzanie tych danych. W ten sposob udalo mi sie potwierdzic, ze to co prezentuja na stronie PKW jest dobrze przeliczane.
Biblioteka posiada tez mozliwosc zapisu stanu statystyk na dysk lub ich ladowanie.
Aby zainstalowac biblioteke (Ubuntu ale dla Windowsa jest podobnie):
Rezultat powinien byc:
Successfully installed election-1.0
1 gem installed
Installing ri documentation for election-1.0...
Installing RDoc documentation for election-1.0...
Przyklad uzycia biblioteki we wlasnym programie:
- Kod: Zaznacz cały
require 'election'
#tworzymy nasza instancje biura wyborczego
election = Election.instance
#tworzymy dwoch kandydatow
cand1 = Candidate.new "Anna", "ZIELINSKI"
cand2 = Candidate.new "Joanna", "ZAB"
election.register_candidate cand1
election.register_candidate cand2
#utworzenie i rejestracja komisji wyborczej
commision = Commision.new
election.register_commision commision
commision.address = '101 Street 5N, Brooklyn'
commision.commune = 'NYC'
commision.county = 'Brooklyn'
commision.province = 'NY'
#dodajemy glosy dla kandydatow
commision.set_votes(:ZIELINSKI, 100)
commision.set_votes(:ZAB, 200)
#wydruk podsumowania
election.print_data
#zapis naszych danych (wlaczajac kandydatow i komisje) na dysk (podobnie tez mozna ladowac)
ElectionIO.save_to_file(election, "wybory.txt")
Aby natomiast przetestowac jak mozna ladowac z Intrnetu dane z PKW mozna uzyc prostego, podstawowego kodu:
- Kod: Zaznacz cały
election = Election.instance
election = ElectionInternet.load_from_internet
election.print_data
Ten kod tworzy parenascie watkow sciagajacych rownoczesnie dane z PKW i wyswietla co 30 sekund postep a na koncu podsumowanie (dokladnie dla kazdego wojewodztwa jest watek w tej wersji). Jesli PKW kiedys usunie te strony zrobilem lokalna kopie danych z wyborow prezydenckich 2010 z calego swiata z kazdej komisji tu: http://www.taboretsoft.com/public/election_data.txt.gz. (Po rozpakowaniu to tylko 6 MB). Po sciagnieciu mozna to zaladowac do biblioteki wpisujac: ElectionIO.load_from_file election, 'data.txt'.
Pozdrawiam i prosze o komentarze. Chetnie odpowiem na pytania poczatkujacych w Rubinie dot. tej biblioteki.

