Project

General

Profile

« Previous | Next » 

Revision 64c9b080

Added by Andreas Müller almost 11 years ago

fix ABCD import

View differences:

cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206ImportConfigurator.java
10 10
package eu.etaxonomy.cdm.io.specimen.abcd206.in;
11 11

  
12 12

  
13
import java.io.InputStream;
13 14
import java.net.URI;
14 15
import java.util.HashMap;
15 16
import java.util.Map;
......
17 18

  
18 19
import org.apache.log4j.Logger;
19 20

  
21
import eu.etaxonomy.cdm.common.UriUtils;
20 22
import eu.etaxonomy.cdm.database.ICdmDataSource;
21 23
import eu.etaxonomy.cdm.io.common.IImportConfigurator;
22 24
import eu.etaxonomy.cdm.io.common.IMatchingImportConfigurator;
......
32 34
 * @created 20.10.2008
33 35
 * @version 1.0
34 36
 */
35
public class Abcd206ImportConfigurator extends ImportConfiguratorBase<Abcd206ImportState, URI> implements IImportConfigurator, IMatchingImportConfigurator {
37
public class Abcd206ImportConfigurator extends ImportConfiguratorBase<Abcd206ImportState, InputStream> implements IImportConfigurator, IMatchingImportConfigurator {
36 38
    private static final Logger logger = Logger.getLogger(Abcd206ImportConfigurator.class);
37 39
    
38 40
    private static String sourceReferenceTitle = null;
......
55 57

  
56 58
    //TODO
57 59
    private static IInputTransformer defaultTransformer = null;
60
    
61
    private URI sourceUri;
58 62

  
59 63
    @Override
60 64
    @SuppressWarnings("unchecked")
......
65 69
        };
66 70
    };
67 71

  
68
    public static Abcd206ImportConfigurator NewInstance(URI uri,
69
            ICdmDataSource destination){
70
        return new Abcd206ImportConfigurator(uri, destination);
72
    public static Abcd206ImportConfigurator NewInstance(URI uri,ICdmDataSource destination){
73
        return new Abcd206ImportConfigurator(null, uri, destination, false);
71 74
    }
72 75

  
73 76
    /**
......
77 80
     * @return
78 81
     */
79 82
    public static Abcd206ImportConfigurator NewInstance(URI uri, ICdmDataSource destination, boolean interact) {
80
        return new Abcd206ImportConfigurator(uri, destination,interact);
83
        return new Abcd206ImportConfigurator(null, uri, destination, interact);
81 84
    }
82 85

  
83

  
84 86
    /**
85
     * @param berlinModelSource
86
     * @param sourceReference
87
     * @param destination
87
     * @param uri
88
     * @param object
89
     * @param b
90
     * @return
88 91
     */
89
    private Abcd206ImportConfigurator(URI uri, ICdmDataSource destination) {
90
        super(defaultTransformer);
91
        setSource(uri);
92
        setDestination(destination);
93
        setSourceReferenceTitle("ABCD classic");
92
    public static Abcd206ImportConfigurator NewInstance(InputStream stream, ICdmDataSource destination, boolean interact) {
93
        return new Abcd206ImportConfigurator(stream, null, destination, interact);
94 94
    }
95 95

  
96
    
97
    
96 98
    /**
97 99
     * @param berlinModelSource
98 100
     * @param sourceReference
99 101
     * @param destination
100 102
     */
101
    private Abcd206ImportConfigurator(URI uri, ICdmDataSource destination, boolean interact) {
103
    private Abcd206ImportConfigurator(InputStream stream, URI uri, ICdmDataSource destination, boolean interact) {
102 104
        super(defaultTransformer);
103
        setSource(uri);
105
        if (stream != null){
106
        	setSource(stream);
107
        }else{
108
        	this.sourceUri = uri;
109
        }
104 110
        setDestination(destination);
105 111
        setSourceReferenceTitle("ABCD classic");
106 112
        setInteractWithUser(interact);
......
120 126

  
121 127

  
122 128
    @Override
123
    public URI getSource(){
124
        return super.getSource();
129
    public InputStream getSource(){
130
        if (super.getSource() != null){
131
        	return super.getSource();
132
        }else if (this.sourceUri != null){
133
        	try {
134
				InputStream is = UriUtils.getInputStream(sourceUri);
135
				setSource(is);
136
				return is;
137
			} catch (Exception e) {
138
				throw new RuntimeException(e);
139
			}
140
        }else{
141
        	return null;
142
        }
125 143
    }
126 144

  
127 145
    /**
128 146
     * @param file
129 147
     */
130 148
    @Override
131
    public void setSource(URI uri) {
132
        super.setSource(uri);
149
    public void setSource(InputStream is) {
150
    	this.sourceUri = null;
151
    	super.setSource(is);
152
    }
153
    
154
    public URI getSourceUri(){
155
    	return this.sourceUri;
156
    }
157
    
158
    /**
159
     * @param file
160
     */
161
    public void setSourceUri(URI sourceUri) {
162
        this.sourceUri = sourceUri;
163
        super.setSource(null);
133 164
    }
134 165

  
135 166

  

Also available in: Unified diff