1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package p3j.pppm.readerwriter.database;
17
18 import james.core.data.model.IModelReader;
19 import james.core.data.model.read.plugintype.IMIMEType;
20 import james.core.data.model.read.plugintype.ModelReaderFactory;
21 import james.core.model.IModel;
22 import james.core.model.symbolic.ISymbolicModel;
23 import james.core.parameters.ParameterBlock;
24
25 import java.net.URI;
26
27 import p3j.pppm.ProjectionModel;
28 import p3j.pppm.SymbolicProjectionModel;
29
30
31
32
33
34
35
36
37 public class PPPModelDatabaseReaderWriterFactory extends ModelReaderFactory {
38
39
40 private static final long serialVersionUID = 2423298767414579313L;
41
42 @Override
43 public IModelReader create(ParameterBlock params) {
44 return new PPPMDatabaseReader();
45 }
46
47 @Override
48 public boolean supportsModel(IModel model) {
49 return model instanceof ProjectionModel;
50 }
51
52 @Override
53 public boolean supportsModel(ISymbolicModel<?> model) {
54 return model instanceof SymbolicProjectionModel;
55 }
56
57 @Override
58 public boolean supportsURI(URI uri) {
59 return uri.getScheme().equals("db-p3j");
60 }
61
62 @Override
63 public boolean supportsMIMEType(IMIMEType mime) {
64 return false;
65 }
66
67 }