Skip to content
This repository has been archived by the owner on Nov 24, 2024. It is now read-only.
/ otj-core Public archive

OpenTable core Java types library

License

Notifications You must be signed in to change notification settings

opentable/otj-core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenTable Core Types

Build Status

Component Charter

  • 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

Callbacks

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.

UUIDs

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.

File Handling

We provide a FileVisitor to take a directory and DeleteRecursively.

Display Formatting

Services are much nicer when byte counts or throughput rates are pretty-printed.


Component Restriction

  • 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.

Component Level

Foundation component

  • Must never depend on any other component.
  • Should minimize its dependency footprint.

Copyright (C) 2014 OpenTable, Inc.