• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

wmixvideo / nfe / #6456

20 Nov 2015 08:23PM UTC coverage: 79.804% (+2.4%) from 77.372%
#6456

push

travis-ci

fincatto
Corrigido teste atrelado a classe de info de partilha de icms

4394 of 5506 relevant lines covered (79.8%)

50.76 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/main/java/com/fincatto/nfe310/webservices/WSLoteEnvio.java
1
package com.fincatto.nfe310.webservices;
2

3
import java.util.Iterator;
4

5
import javax.xml.stream.XMLStreamException;
6

7
import org.apache.axiom.om.OMElement;
8
import org.apache.axiom.om.util.AXIOMUtil;
9
import org.apache.log4j.Logger;
10
import org.simpleframework.xml.core.Persister;
11

12
import com.fincatto.nfe310.NFeConfig;
13
import com.fincatto.nfe310.assinatura.AssinaturaDigital;
14
import com.fincatto.nfe310.classes.NFAutorizador31;
15
import com.fincatto.nfe310.classes.lote.envio.NFLoteEnvio;
16
import com.fincatto.nfe310.classes.lote.envio.NFLoteEnvioRetorno;
17
import com.fincatto.nfe310.transformers.NFRegistryMatcher;
18
import com.fincatto.nfe310.webservices.gerado.NfeAutorizacaoStub;
19
import com.fincatto.nfe310.webservices.gerado.NfeAutorizacaoStub.NfeAutorizacaoLoteResult;
20
import com.fincatto.nfe310.webservices.gerado.NfeAutorizacaoStub.NfeCabecMsg;
21
import com.fincatto.nfe310.webservices.gerado.NfeAutorizacaoStub.NfeCabecMsgE;
22
import com.fincatto.nfe310.webservices.gerado.NfeAutorizacaoStub.NfeDadosMsg;
23

24
class WSLoteEnvio {
25

26
    private static final String NFE_ELEMENTO = "NFe";
27
    private static final Logger LOG = Logger.getLogger(WSLoteEnvio.class);
×
28
    private final NFeConfig config;
29

30
    public WSLoteEnvio(final NFeConfig config) {
×
31
        this.config = config;
×
32
    }
×
33

34
    public NFLoteEnvioRetorno enviaLote(final NFLoteEnvio lote) throws Exception {
35
        final String xml = new AssinaturaDigital(this.config).assinarDocumento(lote.toString());
×
36
        final OMElement omElement = this.nfeToOMElement(xml);
×
37

38
        final NfeDadosMsg dados = new NfeDadosMsg();
×
39
        dados.setExtraElement(omElement);
×
40

41
        final NfeCabecMsgE cabecalhoSOAP = this.getCabecalhoSOAP();
×
42

43
        WSLoteEnvio.LOG.info(omElement);
×
44
        final NfeAutorizacaoLoteResult autorizacaoLoteResult = new NfeAutorizacaoStub(NFAutorizador31.valueOfCodigoUF(this.config.getCUF()).getNfeAutorizacao(this.config.getAmbiente())).nfeAutorizacaoLote(dados, cabecalhoSOAP);
×
45
        final Persister persister = new Persister(new NFRegistryMatcher());
×
46
        final NFLoteEnvioRetorno loteEnvioRetorno = persister.read(NFLoteEnvioRetorno.class, autorizacaoLoteResult.getExtraElement().toString());
×
47
        WSLoteEnvio.LOG.info(loteEnvioRetorno.toString());
×
48
        return loteEnvioRetorno;
×
49
    }
50

51
    private NfeCabecMsgE getCabecalhoSOAP() {
52
        final NfeCabecMsg cabecalho = new NfeCabecMsg();
×
53
        cabecalho.setCUF(this.config.getCUF().getCodigoIbge());
×
54
        cabecalho.setVersaoDados(NFeConfig.VERSAO_NFE);
×
55
        final NfeCabecMsgE cabecalhoSOAP = new NfeCabecMsgE();
×
56
        cabecalhoSOAP.setNfeCabecMsg(cabecalho);
×
57
        return cabecalhoSOAP;
×
58
    }
59

60
    private OMElement nfeToOMElement(final String documento) throws XMLStreamException {
61
        final OMElement ome = AXIOMUtil.stringToOM(documento);
×
62
        final Iterator<?> children = ome.getChildrenWithLocalName(WSLoteEnvio.NFE_ELEMENTO);
×
63
        while (children.hasNext()) {
×
64
            final OMElement omElement = (OMElement) children.next();
×
65
            if ((omElement != null) && (WSLoteEnvio.NFE_ELEMENTO.equals(omElement.getLocalName()))) {
×
66
                omElement.addAttribute("xmlns", NFeConfig.NFE_NAMESPACE, null);
×
67
            }
68
        }
×
69
        return ome;
×
70
    }
71
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc