teodoro 0.0.9 → 0.0.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fb5c4d48569ca39e7f8ef5498b4a66f76d236e5aa8d8ab94c5c648769e5c8968
4
- data.tar.gz: 29d4363f9f97443cfc6f727cd83008b5b1d416f4e4b0af19429cd0a5af1ae911
3
+ metadata.gz: 6813c49b858cd3dd4f2732bf76c0ca99c465e3ee55b713773595206b038048b4
4
+ data.tar.gz: 306eb583e7c68f82cb5fbb9aa0a7983a108a82c8b37e5283c9f54d519a53ad22
5
5
  SHA512:
6
- metadata.gz: 874c4435734ba86267f19342c25e20a3b2b5fbcf030b284550a1f68ad66886f54f624a78f4ee88b39fd5b865c57234740e5a34f9b0e89e4cafffef93fd7366e8
7
- data.tar.gz: 8dd3e540b5c26080612e79a0196f2a5eb9aa316a4d9e1f63c06bdf4cb4be79b51c9487174b35b30f84c861c1f9699f636aebb356f56d55a73fe5eac267fffbe4
6
+ metadata.gz: cda354fd4d76b448b763ab5b447b40122c8c9e7dbbe874c81ead7e1b6cb218dfebe983f255443887ceb8901808ca213674def5e6022b25c086c3abefc54edb71
7
+ data.tar.gz: aa311e5876f76f91c818f250a3f12908173ced56a8722a0db14fa85b17b2fbb4cb8abda34c302a19ea023e54d1a8cd5372ae479d23fbea7b1ab9376f8624fc81
@@ -41,7 +41,12 @@ module Teodoro
41
41
  public
42
42
 
43
43
  def momento_de_processamento_pelo_e_social
44
- recibo['retornoEvento/processamento/dhProcessamento']
44
+ # otimizacao do gerenciamento de memoria
45
+ carregar_conteudo
46
+ .then { |conteudo| Nokogiri::XML(conteudo) }
47
+ .then { |xml| Nokogiri::XML(xml.css('eSocial/retornoProcessamentoDownload/recibo/*').to_s) }
48
+ .then { |xml_do_recibo| XML.new(xml_do_recibo) }
49
+ .then { |recibo| recibo['retornoEvento/processamento/dhProcessamento'] }
45
50
  end
46
51
 
47
52
  def nome
@@ -58,26 +63,10 @@ module Teodoro
58
63
 
59
64
  private
60
65
 
61
- def recibo
62
- @recibo ||= XML.new(xml_do_recibo)
63
- end
64
-
65
- def xml_do_recibo
66
- Nokogiri::XML(xml.css('eSocial/retornoProcessamentoDownload/recibo/*').to_s)
67
- end
68
-
69
- def xml
70
- @xml ||= Nokogiri::XML(conteudo)
71
- end
72
-
73
- def conteudo
66
+ def carregar_conteudo
74
67
  File.read(caminho)
75
68
  end
76
69
 
77
- def tipo_de_evento
78
- nome[-6..].delete('-')
79
- end
80
-
81
70
  def arquivo
82
71
  if evento_de_tabela?
83
72
  evento_de_tabela
@@ -150,8 +139,24 @@ module Teodoro
150
139
  @xml_do_evento ||= Nokogiri::XML(xml.css('eSocial/retornoProcessamentoDownload/evento/*').to_s)
151
140
  end
152
141
 
142
+ def xml
143
+ @xml ||= Nokogiri::XML(carregar_conteudo)
144
+ end
145
+
146
+ def tipo_de_evento
147
+ @tipo_de_evento ||= nome[-6..].delete('-')
148
+ end
149
+
153
150
  def evento
154
151
  XML.new(xml_do_evento)
155
152
  end
153
+
154
+ def recibo
155
+ @recibo ||= XML.new(xml_do_recibo)
156
+ end
157
+
158
+ def xml_do_recibo
159
+ Nokogiri::XML(xml.css('eSocial/retornoProcessamentoDownload/recibo/*').to_s)
160
+ end
156
161
  end
157
162
  end
@@ -64,13 +64,13 @@ module Teodoro
64
64
  end
65
65
 
66
66
  def processar_arquivos_xml
67
- arquivos_xml
68
- .sort_by { [_1.momento_de_processamento_pelo_e_social, _1.nome] }
69
- .each(&:processar)
67
+ # otimizacao do gerenciamento de memoria
68
+ arquivos_xml.shift.processar while arquivos_xml.any?
70
69
  end
71
70
 
72
71
  def arquivos_xml
73
- Dir[File.join(destino_dos_arquivos_xml, '*.xml')]
72
+ @arquivos_xml ||=
73
+ Dir[File.join(destino_dos_arquivos_xml, '*.xml')]
74
74
  .map do |caminho|
75
75
  ArquivoXML.new(
76
76
  caminho: caminho,
@@ -78,6 +78,7 @@ module Teodoro
78
78
  de_recibo_para_nome_do_arquivo_data: de_recibo_para_nome_do_arquivo_data
79
79
  )
80
80
  end
81
+ .sort_by { [_1.momento_de_processamento_pelo_e_social, _1.nome] }
81
82
  end
82
83
 
83
84
  def de_recibo_para_nome_do_arquivo_data
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: teodoro
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Clavius Tales
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-09 00:00:00.000000000 Z
11
+ date: 2021-04-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri