class ConfigSchemaFlowTransformService implements FlowTransformService<ConfigSchema> {

    @Override
    public ConfigSchema transform(final VersionedFlowSnapshot versionedFlowSnapshot) throws FlowTransformException {
        if (versionedFlowSnapshot == null) {
            throw new IllegalArgumentException("VersionedFlowSnapshot cannot be null");
        }

        try {
            return ConfigMain.transformVersionedFlowSnapshotToSchema(versionedFlowSnapshot);
        } catch (Exception e) {
            throw new FlowTransformException("Unable to transform flow due to: " + e.getMessage(), e);
        }
    }

}