All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ikasan.flow.configuration.FlowComponentInvokerConfigurationConverter Maven / Gradle / Ivy

The newest version!
/*
 *  ====================================================================
 *  Ikasan Enterprise Integration Platform
 *
 *  Distributed under the Modified BSD License.
 *  Copyright notice: The copyright for this software and a full listing
 *  of individual contributors are as shown in the packaged copyright.txt
 *  file.
 *
 *  All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *   - Redistributions of source code must retain the above copyright notice,
 *     this list of conditions and the following disclaimer.
 *
 *   - Redistributions in binary form must reproduce the above copyright notice,
 *     this list of conditions and the following disclaimer in the documentation
 *     and/or other materials provided with the distribution.
 *
 *   - Neither the name of the ORGANIZATION nor the names of its contributors may
 *     be used to endorse or promote products derived from this software without
 *     specific prior written permission.
 *
 *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 *  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 *  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 *  DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
 *  FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 *  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 *  SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
 *  CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 *  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
 *  USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *  ====================================================================
 *
 */

package org.ikasan.flow.configuration;

import org.springframework.core.convert.converter.Converter;

public class FlowComponentInvokerConfigurationConverter implements Converter {

    @Override
    public FlowComponentInvokerConfiguration convert(String source) {
        FlowComponentInvokerConfiguration configuration = new FlowComponentInvokerConfiguration();

        try {
            String[] fields = source.split(",");
            configuration.setFlowName(fields[0].trim());
            configuration.setComponentName(fields[1].trim());
            configuration.setSnapEvent(Boolean.valueOf(fields[2].trim()));
            configuration.setCaptureMetrics(Boolean.valueOf(fields[3].trim()));
            configuration.setDynamicConfiguration(Boolean.valueOf(fields[4].trim()));
        }
        catch (Exception e) {
            throw new RuntimeException(String.format("An error has occurred attempting to convert configuration " +
                "ikasan.flow.component.invoker.configuration.flowComponentInvokerConfigurations. All values for this" +
                " configuration are expected to be in the format , , " +
                ", , . For example - flow1, component1, false, true, false"), e);
        }

        return configuration;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy