Skip to content

Commit 4ecbb8d

Browse files
committed
Move implementations to AbstractConvertService
There was no logic that needed to be specified outside an Abstract layer.
1 parent 60a9457 commit 4ecbb8d

File tree

2 files changed

+66
-72
lines changed

2 files changed

+66
-72
lines changed

src/main/java/org/scijava/convert/AbstractConvertService.java

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,10 @@
3232
package org.scijava.convert;
3333

3434
import java.lang.reflect.Type;
35+
import java.util.ArrayList;
3536
import java.util.Collection;
3637
import java.util.HashSet;
38+
import java.util.LinkedHashSet;
3739
import java.util.Set;
3840

3941
import org.scijava.plugin.AbstractHandlerService;
@@ -51,6 +53,69 @@ public abstract class AbstractConvertService extends
5153
{
5254

5355
// -- ConversionService methods --
56+
@SuppressWarnings({ "unchecked", "rawtypes" })
57+
@Override
58+
public Class<Converter<?, ?>> getPluginType() {
59+
return (Class)Converter.class;
60+
}
61+
62+
@Override
63+
public Class<ConversionRequest> getType() {
64+
return ConversionRequest.class;
65+
}
66+
67+
@Override
68+
public Converter<?, ?> getHandler(final Object src, final Class<?> dest) {
69+
return getHandler(new ConversionRequest(src, dest));
70+
}
71+
72+
@Override
73+
public Converter<?, ?> getHandler(final Class<?> src, final Class<?> dest) {
74+
return getHandler(new ConversionRequest(src, dest));
75+
}
76+
77+
@Override
78+
public Converter<?, ?> getHandler(final Object src, final Type dest) {
79+
return getHandler(new ConversionRequest(src, dest));
80+
}
81+
82+
@Override
83+
public Converter<?, ?> getHandler(final Class<?> src, final Type dest) {
84+
return getHandler(new ConversionRequest(src, dest));
85+
}
86+
87+
@Override
88+
public boolean supports(final Object src, final Class<?> dest) {
89+
return supports(new ConversionRequest(src, dest));
90+
}
91+
92+
@Override
93+
public boolean supports(final Class<?> src, final Class<?> dest) {
94+
return supports(new ConversionRequest(src, dest));
95+
}
96+
97+
@Override
98+
public boolean supports(final Object src, final Type dest) {
99+
return supports(new ConversionRequest(src, dest));
100+
}
101+
102+
@Override
103+
public boolean supports(final Class<?> src, final Type dest) {
104+
return supports(new ConversionRequest(src, dest));
105+
}
106+
107+
@Override
108+
public Collection<Object> getCompatibleInputs(Class<?> dest) {
109+
Set<Object> objects = new LinkedHashSet<Object>();
110+
111+
for (final Converter<?, ?> c : getInstances()) {
112+
if (dest.isAssignableFrom(c.getOutputType())) {
113+
c.populateInputCandidates(objects);
114+
}
115+
}
116+
117+
return new ArrayList<Object>(objects);
118+
}
54119

55120
@Override
56121
public Object convert(Object src, Type dest) {

src/main/java/org/scijava/convert/DefaultConvertService.java

Lines changed: 1 addition & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,6 @@
3131

3232
package org.scijava.convert;
3333

34-
import java.lang.reflect.Type;
35-
import java.util.ArrayList;
36-
import java.util.Collection;
37-
import java.util.LinkedHashSet;
38-
import java.util.Set;
39-
4034
import org.scijava.plugin.Plugin;
4135
import org.scijava.service.Service;
4236

@@ -48,70 +42,5 @@
4842
@Plugin(type = Service.class)
4943
public class DefaultConvertService extends AbstractConvertService
5044
{
51-
52-
@SuppressWarnings({ "unchecked", "rawtypes" })
53-
@Override
54-
public Class<Converter<?, ?>> getPluginType() {
55-
return (Class)Converter.class;
56-
}
57-
58-
@Override
59-
public Class<ConversionRequest> getType() {
60-
return ConversionRequest.class;
61-
}
62-
63-
// -- ConversionService methods --
64-
65-
@Override
66-
public Converter<?, ?> getHandler(final Object src, final Class<?> dest) {
67-
return getHandler(new ConversionRequest(src, dest));
68-
}
69-
70-
@Override
71-
public Converter<?, ?> getHandler(final Class<?> src, final Class<?> dest) {
72-
return getHandler(new ConversionRequest(src, dest));
73-
}
74-
75-
@Override
76-
public Converter<?, ?> getHandler(final Object src, final Type dest) {
77-
return getHandler(new ConversionRequest(src, dest));
78-
}
79-
80-
@Override
81-
public Converter<?, ?> getHandler(final Class<?> src, final Type dest) {
82-
return getHandler(new ConversionRequest(src, dest));
83-
}
84-
85-
@Override
86-
public boolean supports(final Object src, final Class<?> dest) {
87-
return supports(new ConversionRequest(src, dest));
88-
}
89-
90-
@Override
91-
public boolean supports(final Class<?> src, final Class<?> dest) {
92-
return supports(new ConversionRequest(src, dest));
93-
}
94-
95-
@Override
96-
public boolean supports(final Object src, final Type dest) {
97-
return supports(new ConversionRequest(src, dest));
98-
}
99-
100-
@Override
101-
public boolean supports(final Class<?> src, final Type dest) {
102-
return supports(new ConversionRequest(src, dest));
103-
}
104-
105-
@Override
106-
public Collection<Object> getCompatibleInputs(Class<?> dest) {
107-
Set<Object> objects = new LinkedHashSet<Object>();
108-
109-
for (final Converter<?, ?> c : getInstances()) {
110-
if (dest.isAssignableFrom(c.getOutputType())) {
111-
c.populateInputCandidates(objects);
112-
}
113-
}
114-
115-
return new ArrayList<Object>(objects);
116-
}
45+
// Trivial implementation
11746
}

0 commit comments

Comments
 (0)