source: contrib/MailArchiver/sources/src/serpro/mailarchiver/view/admin/UploadController.java @ 6785

Revision 6785, 3.4 KB checked in by rafaelraymundo, 12 years ago (diff)

Ticket #2946 - Liberado codigo do MailArchiver?. Documentação na subpasta DOCS.

Line 
1/**
2 * MailArchiver is an application that provides services for storing and managing e-mail messages through a Web Services SOAP interface.
3 * Copyright (C) 2012  Marcio Andre Scholl Levien and Fernando Alberto Reuter Wendt and Jose Ronaldo Nogueira Fonseca Junior
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU Affero General Public License as
7 * published by the Free Software Foundation, either version 3 of the
8 * License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 * GNU Affero General Public License for more details.
14 *
15 * You should have received a copy of the GNU Affero General Public License
16 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 */
18
19/******************************************************************************\
20*
21*  This product was developed by
22*
23*        SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO),
24*
25*  a government company established under Brazilian law (5.615/70),
26*  at Department of Development of Porto Alegre.
27*
28\******************************************************************************/
29
30package serpro.mailarchiver.view.admin;
31
32import java.io.File;
33
34import static com.eventrouter.MessagePublisher.*;
35import com.eventrouter.annotation.Subscribe;
36
37import com.google.common.io.Files;
38
39import org.springframework.beans.factory.annotation.Autowired;
40
41import serpro.mailarchiver.service.dto.TMessage;
42import serpro.mailarchiver.service.web.ArchiveServices;
43import serpro.mailarchiver.util.Charsets;
44import serpro.mailarchiver.util.Logger;
45import serpro.mailarchiver.view.BaseController;
46
47class UploadController extends BaseController {
48
49    private static final Logger log = Logger.getLocalLogger();
50
51    UploadController(String displayId) {
52        super(displayId);
53    }
54
55    @Override
56    public UploadController init() {
57        return this;
58    }
59
60    @Autowired
61    private ArchiveServices archiveServices;
62
63    @Subscribe({"/mailarchiver/tests/upload"})
64    public void testeUploadMessage(byte[] msgBytes, String folderId) {
65
66        TMessage msgdto = null;
67        try {
68            String message = new String(msgBytes, Charsets.Windows_1252);
69            msgdto = archiveServices.archive(AdminConsoleApp.getInstance().getSession().getSessionId(), folderId, message);
70            publish("/mailarchiver/notification/humanized", "Mensagem carregada no metaarquivamento", msgdto.toString());
71        }
72        catch(Exception ex) {
73            log.error(ex);
74            publish("/mailarchiver/notification/error", "Erro no metaarquivamento");
75        }
76    }
77
78    @Subscribe({"/mailarchiver/tests/upload"})
79    public void testeUploadMessage(File file, String filename, String folderId) {
80
81        TMessage msgdto = null;
82        try {
83            String message = Files.toString(file, Charsets.Windows_1252);
84            msgdto = archiveServices.archive(AdminConsoleApp.getInstance().getSession().getSessionId(), folderId, message);
85            publish("/mailarchiver/notification/humanized", "Mensagem carregada no metaarquivamento", msgdto.toString());
86        }
87        catch(Exception ex) {
88            log.error(ex);
89            publish("/mailarchiver/notification/error", "Erro no metaarquivamento");
90        }
91    }
92
93}
Note: See TracBrowser for help on using the repository browser.