Java interface for the shape factory