- Hold core types that are not specific to any one service
- May only hold types that could reasonably fit in a "core Java library" e.g. Apache commons, JDK, or Guava
The Java core library does not supply a general purpose Callback<T>
type. With Java 8, it includes Consumer<T>
, but
this functional interface is geared more towards consumption of single items. In particular, there is no way to signal
termination of the callback.
Callback fills this void. A few utilities are provided to go along.
The JDK UUID
class has horribly slow toString
and fromString
implementations. This has been filed as a
bug, but in the interim there is a FastUUID
class.
We provide a FileVisitor
to take a directory and
DeleteRecursively.
Services are much nicer when byte counts or throughput rates are pretty-printed.
- All changes must be approved by a senior backend engineer or architect who is not the contributor.
This library must remain extremely small. There is a very high bar for inclusion into this library.
Foundation component
- Must never depend on any other component.
- Should minimize its dependency footprint.
Copyright (C) 2014 OpenTable, Inc.