1 package fr.ifremer.tutti.service;
2
3 /*
4 * #%L
5 * Tutti :: Service
6 * %%
7 * Copyright (C) 2012 - 2014 Ifremer
8 * %%
9 * This program is free software: you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as
11 * published by the Free Software Foundation, either version 3 of the
12 * License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public
20 * License along with this program. If not, see
21 * <http://www.gnu.org/licenses/gpl-3.0.html>.
22 * #L%
23 */
24
25 import java.io.IOException;
26
27 /**
28 * Sammoa service support.
29 *
30 * This simple implementation of {@link TuttiService}, offer to keep the
31 * {@link #context}.
32 *
33 * <strong>Note:</strong> should be used for any service! and never
34 * instanciated by hand but via {@link TuttiServiceContext#getService(Class)} method.
35 *
36 * @author Tony Chemit - chemit@codelutin.com
37 * @since 0.1
38 */
39 public abstract class AbstractTuttiService implements TuttiService {
40
41 protected TuttiServiceContext context;
42
43 @Override
44 public void setServiceContext(TuttiServiceContext context) {
45 this.context = context;
46 }
47
48 public <S extends TuttiService> S getService(Class<S> serviceType) {
49 return context.getService(serviceType);
50 }
51
52 @Override
53 public void close() throws IOException {
54 // by default nothing to close
55 }
56
57 // protected void compressZipFile(File zipFile, File directory) {
58 //
59 // try {
60 // FileUtils.forceMkdir(zipFile.getParentFile());
61 //
62 // try {
63 // ZipUtil.compress(zipFile, directory);
64 // } finally {
65 // FileUtils.deleteDirectory(directory);
66 //
67 // }
68 // } catch (IOException e) {
69 // throw new ApplicationTechnicalException(t("tutti.service.compressZipFile.error", directory, zipFile), e);
70 // }
71 // }
72 }