### Question:
LongArrayToStringConverter extends SimpleConverter<long[], String> { @Override public String apply(final long[] source) throws UnconvertibleObjectException { if (source == null) return null; return Arrays.stream(source) .mapToObj(Long::toString) .collect(Collectors.joining(",")); }  @Override Class<long[]> getSourceClass(); @Override Class<String> getTargetClass(); @Override String apply(final long[] source); @Override ObjectConverter<String, long[]> inverse();  }### Answer:
@Test public void testConversion() throws UnconvertibleObjectException { final WPSObjectConverter<long[], String> converter = WPSConverterRegistry.getInstance().getConverter(long[].class, String.class); long[] input = new long[] { 10, 5, 90, 6, 7000000000l}; String output = converter.apply(input); assertEquals("10,5,90,6,7000000000", output); output = converter.apply(new long[0]); assertEquals("", output); assertNull("A null value should be converted to another null value", converter.apply(null)); }