class CustomTaskFactory implements DefinitionFactory<CustomTask> {

    @Override
    public CustomTask build(final String identifier) {
        final String name = BindableAdapterUtils.getDynamicId(CustomTask.class,
                                                              identifier);
        return null != name ?
                buildItem(name) :
                CustomTaskBuilder.newInstance();
    }

    protected  CustomTaskFactory();
    @Inject public  CustomTaskFactory(final Instance<WorkItemDefinitionRegistry> registry);
    public  CustomTaskFactory(final Supplier<WorkItemDefinitionRegistry> registry);

}