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

com.fluxtion.runtime.output.AbstractMessageSink Maven / Gradle / Ivy

/*
 * SPDX-FileCopyrightText: © 2024 Gregory Higgins 
 * SPDX-License-Identifier: AGPL-3.0-only
 */

package com.fluxtion.runtime.output;

import java.util.function.Function;

public abstract class AbstractMessageSink implements MessageSink {

    private Function valueMapper = Function.identity();

    @Override
    public final void accept(T t) {
        sendToSink(valueMapper.apply(t));
    }

    @Override
    public void setValueMapper(Function valueMapper) {
        this.valueMapper = valueMapper;
    }

    abstract protected void sendToSink(Object value);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy