class FormGeneratorDriver implements LayoutGeneratorDriver {

    @Override
    public Optional<IsWidget> getComponentPart(HTMLElement column, LayoutComponent layoutComponent, String partId) {
        FieldDefinition field = getFieldForLayoutComponent(layoutComponent);
        FieldLayoutComponent dragComponent = getFieldLayoutComponentForField(field);
        if (dragComponent != null) {
            Widget columnWidget = getWidget(column);
            RenderingContext componentContext = new RenderingContext(layoutComponent, columnWidget);
            return dragComponent.getContentPart(partId, componentContext);
        }
        return Optional.empty();
    }

    @Inject public  FormGeneratorDriver(SyncBeanManager beanManager, ManagedInstance<LayoutDragComponent> instance, FormsElementWrapperWidgetUtil wrapperWidgetUtil, Document document);

}