pig/src/main/java/com/twitter/elephantbird/pig/store/SequenceFileStorage.java
private static <W extends Writable> void verifyWritableClass(Class<W> writableClass,
      boolean isKeyClass, WritableConverter<W> writableConverter) {
    Preconditions.checkNotNull(writableClass, "%s Writable class is undefined;"
        + " WritableConverter of type '%s' does not define default Writable type,"
        + " and no type was specified by user", isKeyClass ? "Key" : "Value", writableConverter
        .getClass().getName());
  }
private static <W extends Writable> void verifyWritableClass(Class<W> writableClass,
      boolean isKeyClass, WritableConverter<W> writableConverter) {
    Preconditions.checkNotNull(writableClass, "%s Writable class is undefined;"
        + " WritableConverter of type '%s' does not define default Writable type,"
        + " and no type was specified by user", isKeyClass ? "Key" : "Value", writableConverter
        .getClass().getName());
  }
private static < W extends Writable > void verifyWritableClass ( Class < W > writableClass , boolean isKeyClass , WritableConverter < W > writableConverter ) { Preconditions . checkNotNull ( writableClass , "%s Writable class is undefined;" + " WritableConverter of type '%s' does not define default Writable type," + " and no type was specified by user" , isKeyClass ? "Key" : "Value" , writableConverter . getClass ( ) . getName ( ) ) ; }
Tests validity of Writable class, ensures consistent error message for both key and value
tests.

@param writableClass class being tested.
@param isKeyClass {@code true} if testing keyClass, {@code false} otherwise.
@param writableConverter associated WritableConverter instance.
Tests validity of Writable class ensures consistent error message for both key and value tests .