mangusta 0.4.6 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,3 @@
1
1
  modulo Mangusta
2
- VERSIONE = "0.4.6"
2
+ VERSIONE = "0.5.0"
3
3
  fine
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mangusta
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.6
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Francesco Ballardin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-03 00:00:00.000000000 Z
11
+ date: 2020-06-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: italian-ruby
@@ -60,12 +60,12 @@ files:
60
60
  - lib/mangusta/documento/campo.ir
61
61
  - lib/mangusta/documento/espositore.ir
62
62
  - lib/mangusta/documento/incorporato.ir
63
+ - lib/mangusta/documento/metodi_condivisi.ir
63
64
  - lib/mangusta/documento/metodi_di_classe.ir
64
65
  - lib/mangusta/documento/relazione.ir
65
66
  - lib/mangusta/load.rb
67
+ - lib/mangusta/ricerca.ir
66
68
  - lib/mangusta/ripostiglio.ir
67
- - lib/mangusta/ripostiglio/risultato_ricerca.ir
68
- - lib/mangusta/utilità/convertitori.ir
69
69
  - lib/mangusta/versione.ir
70
70
  - mangusta.gemspec
71
71
  homepage: https://github.com/Pluvie/ruby-mangusta
@@ -1,95 +0,0 @@
1
- modulo Mangusta
2
- modulo Ripostiglio
3
- classe RisultatoRicerca
4
-
5
- accessore :parametri_ricerca
6
- accessore :relazioni_incluse
7
-
8
- definisci inizializzatore(collezione, classe_documento, parametri, ordinamento = Mappa.nuova)
9
- @collezione = collezione
10
- @classe_documento = classe_documento
11
- @parametri_ricerca = parametri
12
- @ordinamento_ricerca = Mappa[sort: ordinamento]
13
- @relazioni_incluse = []
14
- fine
15
-
16
- ##
17
- # Prende il primo elemento trovato.
18
- definisci primo
19
- _carica_relazioni_incluse
20
- documento_in_json = @collezione.cerca(@parametri_ricerca, @ordinamento_ricerca).primo
21
- _converti documento_in_json
22
- fine
23
- alias :prima :primo
24
-
25
- ##
26
- # Prende l'ultimo elemento trovato.
27
- definisci ultimo
28
- _carica_relazioni_incluse
29
- @ordinamento_ricerca[:sort].fondi! _id: -1
30
- documento_in_json = @collezione.cerca(@parametri_ricerca, @ordinamento_ricerca).primo
31
- _converti documento_in_json
32
- fine
33
- alias :ultima :ultimo
34
-
35
- ##
36
- # Ritorna l'oggetto ricerca come Lista documenti.
37
- definisci lista
38
- _carica_relazioni_incluse
39
- @collezione.cerca(@parametri_ricerca, @ordinamento_ricerca).lista.mappa esegui |documento_in_json|
40
- _converti documento_in_json
41
- fine
42
- fine
43
-
44
- ##
45
- # Aggiunge parametri alla ricerca.
46
- definisci cerca(**nuovi_parametri_ricerca)
47
- @parametri_ricerca.fondi! nuovi_parametri_ricerca
48
- se_stessa
49
- fine
50
-
51
- ##
52
- # Conta i risultati.
53
- definisci conteggio
54
- @collezione.cerca(@parametri_ricerca, @ordinamento_ricerca).count
55
- fine
56
- alias :conteggia :conteggio
57
-
58
- ##
59
- # Include relazioni del documento.
60
- definisci includi_relazioni(*relazioni_da_includere)
61
- relazioni_da_includere.per_ognuna esegui |nome_relazione_da_includere|
62
- relazione = @classe_documento.relazioni.trova esegui |relazione|
63
- relazione.nome == nome_relazione_da_includere
64
- fine
65
- prossima se relazione.nulla?
66
- @relazioni_incluse << relazione
67
- fine
68
- se_stessa
69
- fine
70
-
71
- privati
72
-
73
- ##
74
- # Converte in documento.
75
- definisci _converti(mappa)
76
- documento = Mangusta::Utilità.converti_in_documento mappa, @classe_documento
77
-
78
- @relazioni_incluse.per_ognuna esegui |relazione_inclusa|
79
- documento.manda "#{relazione_inclusa.nome}=", relazione_inclusa.risolvi(documento)
80
- fine
81
-
82
- documento
83
- fine
84
-
85
- ##
86
- # Carica relazioni incluse in memoria, se presenti.
87
- definisci _carica_relazioni_incluse
88
- @relazioni_incluse.per_ognuna esegui |relazione_inclusa|
89
- relazione_inclusa.carica_documenti
90
- fine
91
- fine
92
-
93
- fine
94
- fine
95
- fine
@@ -1,91 +0,0 @@
1
- modulo Mangusta
2
- modulo Utilità
3
-
4
- ##
5
- # Converte un documento in json.
6
- definisci se_stessa.converti_in_json(documento, *relazioni_richieste)
7
- ritorna documento se documento.è_una? Mappa
8
- alza "L'oggetto passato non include Mangusta::Documento" a_meno_che
9
- documento.classe.moduli_inclusi.include? Mangusta::Documento
10
-
11
- documento_convertito = Mappa.nuova
12
-
13
- documento.campi.per_ognuno esegui |campo|
14
- valore_campo = documento.ottieni_valore campo.nome
15
- prossimo se valore_campo.nullo?
16
- se campo.nome.in? documento.relazioni.mappa(&:nome_campo)
17
- inizia
18
- valore_campo = IdOggetto.converti valore_campo se valore_campo.è_una? Stringa
19
- valore_campo = valore_campo.mappa { |singolo_valore| IdOggetto.converti singolo_valore } se valore_campo.è_una? Lista
20
- recupera IdOggetto::Invalid
21
- fine
22
- fine
23
- documento_convertito.deposita campo.nome, valore_campo
24
- fine
25
-
26
- documento.documenti_incorporati.per_ognuno esegui |documento_incorporato|
27
- documento_incorporato_convertito = converti_documento_incorporato_in_json documento, documento_incorporato
28
- prossimo se documento_incorporato_convertito.nullo?
29
- documento_convertito.deposita documento_incorporato.nome, documento_incorporato_convertito
30
- fine
31
-
32
- se relazioni_richieste.almeno_una?
33
- relazioni_richieste.per_ognuna esegui |nome_relazione, campi_richiesti|
34
- relazione = documento.relazioni.trova { |relazione| relazione.nome == nome_relazione }
35
- prossima se relazione.nulla?
36
- relazione_convertita = converti_documento_relazionato_in_json documento, relazione
37
- prossimo se relazione_convertita.nulla?
38
- documento_convertito.deposita relazione.nome, relazione_convertita
39
- fine
40
- fine
41
-
42
- documento_convertito
43
- fine
44
-
45
- ##
46
- # Converte un documento incorporato in json.
47
- definisci se_stessa.converti_documento_incorporato_in_json(documento, documento_incorporato)
48
- valore_documento_incorporato = documento.ottieni_valore documento_incorporato.nome
49
- ritorna nullo se valore_documento_incorporato.nullo?
50
-
51
- considera documento_incorporato.tipologia
52
- quando :singolo
53
- ritorna valore_documento_incorporato se valore_documento_incorporato.è_una? Mappa
54
- converti_in_json(valore_documento_incorporato)
55
- quando :multiplo
56
- valore_documento_incorporato.mappa esegui |singolo_valore|
57
- prossimo singolo_valore se singolo_valore.è_una? Mappa
58
- converti_in_json singolo_valore
59
- fine
60
- fine
61
- fine
62
-
63
- ##
64
- # Converte una relazione in json.
65
- definisci se_stessa.converti_documento_relazionato_in_json(documento, relazione)
66
- valore_relazione = documento.ottieni_valore relazione.nome
67
- ritorna nullo se valore_relazione.nulla?
68
-
69
- considera relazione.tipologia
70
- quando :ha_uno, :appartiene_a
71
- ritorna valore_relazione se valore_relazione.è_una? Mappa
72
- converti_in_json(valore_relazione)
73
- quando :ha_molti, :ha_e_appartiene_a_molti
74
- valore_relazione.mappa esegui |singolo_valore|
75
- prossimo singolo_valore se singolo_valore.è_una? Mappa
76
- converti_in_json singolo_valore
77
- fine
78
- fine
79
- fine
80
-
81
- ##
82
- # Converte un json in documento.
83
- definisci se_stessa.converti_in_documento(documento_in_json, classe_documento)
84
- ritorna documento_in_json se documento_in_json.non_è_una? Mappa
85
- classe_documento ||= Oggetto
86
-
87
- classe_documento.nuovo **documento_in_json
88
- fine
89
-
90
- fine
91
- fine