| 24 | import pcgen.cdom.facet.base.AbstractItemConvertingFacet; |
| 25 | |
| 26 | public class ConvertingFacetView<S, D> implements FacetView<Object> |
| 27 | { |
| 28 | |
| 29 | private AbstractItemConvertingFacet<S, D> facet; |
| 30 | |
| 31 | ConvertingFacetView(AbstractItemConvertingFacet<S, D> facet) |
| 32 | { |
| 33 | this.facet = facet; |
| 34 | } |
| 35 | |
| 36 | @Override |
| 37 | public Collection<? extends Object> getSet(CharID id) |
| 38 | { |
| 39 | Collection<S> sources = facet.getSourceObjects(id); |
| 40 | Collection<SourceDest> list = new ArrayList<>(sources.size()); |
| 41 | for (S src : sources) |
| 42 | { |
| 43 | D dest = facet.getResultFor(id, src); |
| 44 | list.add(new SourceDest(src, dest)); |
| 45 | } |
| 46 | return list; |
| 47 | } |
| 48 | |
| 49 | @Override |
| 50 | public Collection<Object> getSources(CharID id, Object obj) |
| 51 | { |
| 52 | return facet.getSourcesFor(id, ((SourceDest) obj).getSource()); |
| 53 | } |
| 54 | |
| 55 | @Override |
| 56 | public Object[] getChildren() |
| 57 | { |
| 58 | return facet.getDataFacetChangeListeners(); |
| 59 | } |
| 60 | |
| 61 | @Override |
| 62 | public String getDescription() |
| 63 | { |
| 64 | return facet.getClass().getSimpleName(); |
| 65 | } |
| 66 | |
| 67 | @Override |
| 68 | public boolean represents(Object src) |
| 69 | { |
| 70 | return facet.equals(src); |
| 71 | } |
| 72 | |
| 73 | @Override |
| 74 | public String toString() |
| 75 | { |
| 76 | return "Facet: " + facet.getClass().getSimpleName(); |
| 77 | } |
| 78 | |
| 79 | private final class SourceDest |
| 80 | { |
| 81 | private final S source; |
| 82 | private final D destination; |
| 83 |
nothing calls this directly
no outgoing calls
no test coverage detected