EMMA Coverage Report (generated Sun Apr 20 22:38:01 CEST 2008)
[all classes][net.sf.jomic.comic]

COVERAGE SUMMARY FOR SOURCE FILE [CreateComicTask.java]

nameclass, %method, %block, %line, %
CreateComicTask.java100% (1/1)86%  (6/7)71%  (82/116)84%  (19.4/23)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class CreateComicTask100% (1/1)86%  (6/7)71%  (82/116)84%  (19.4/23)
CreateComicTask (File, String [], File, String): void 0%   (0/1)0%   (0/10)0%   (0/2)
start (): void 100% (1/1)65%  (13/20)93%  (4.6/5)
CreateComicTask (File, String [], Map, File, Conversion): void 100% (1/1)75%  (41/55)89%  (8/9)
<static initializer> 100% (1/1)80%  (12/15)80%  (0.8/1)
CreateComicTask (): void 100% (1/1)100% (3/3)100% (2/2)
CreateComicTask (File, String [], File, Conversion): void 100% (1/1)100% (8/8)100% (2/2)
progressChanged (Task): void 100% (1/1)100% (5/5)100% (2/2)

1// Jomic - a viewer for comic book archives.
2// Copyright (C) 2004-2008 Thomas Aglassinger
3//
4// This program is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published by
6// the Free Software Foundation, either version 3 of the License, or
7// (at your option) any later version.
8//
9// This program is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12// GNU General Public License for more details.
13//
14// You should have received a copy of the GNU General Public License
15// along with this program.  If not, see <http://www.gnu.org/licenses/>.
16package net.sf.jomic.comic;
17 
18import java.io.File;
19import java.util.Map;
20 
21import net.sf.jomic.tools.AbstractTask;
22import net.sf.jomic.tools.ProgressChangeListener;
23import net.sf.jomic.tools.Task;
24 
25/**
26 *  Task to create a comic.
27 *
28 * @author    Thomas Aglassinger.
29 */
30public class CreateComicTask extends AbstractTask implements ProgressChangeListener
31{
32    private Task delegatedTask;
33 
34    public CreateComicTask(File sourceFolder, String[] imageNames, File targetComic, String targetFormat) {
35        this(sourceFolder, imageNames, targetComic, new Conversion(targetFormat));
36    }
37 
38    public CreateComicTask(File sourceFolder, String[] imageNames, File targetComic, Conversion conversion) {
39        this(sourceFolder, imageNames, null, targetComic, conversion);
40    }
41 
42    public CreateComicTask(File sourceFolder, String[] imageNames, Map imageInfoMap, File targetComic, Conversion conversion) {
43        this();
44        String comicFormat = conversion.getComicFormat();
45 
46        if (comicFormat.equals(Conversion.COMIC_FORMAT_CBZ)) {
47            delegatedTask = new CreateCbzComicTask(sourceFolder, imageNames, imageInfoMap, targetComic, conversion);
48        } else if (comicFormat.equals(Conversion.COMIC_FORMAT_PDF)) {
49            delegatedTask = new CreatePdfComicTask(sourceFolder, imageNames, imageInfoMap, targetComic, conversion);
50        } else {
51            assert false : "targetFormat=" + comicFormat;
52        }
53        setMaxProgress(delegatedTask.getMaxProgress());
54    }
55 
56    private CreateComicTask() {
57        super();
58    }
59 
60    public void progressChanged(Task source) {
61        setProgress(source.getProgress());
62    }
63 
64    public void start()
65        throws Exception {
66        delegatedTask.addProgressChangeListener(this);
67        try {
68            delegatedTask.start();
69        } finally {
70            delegatedTask.removeProgressChangeListener(this);
71        }
72    }
73}

[all classes][net.sf.jomic.comic]
EMMA 2.0.4217 (C) Vladimir Roubtsov