package com.r35157.assetaz.services.ticker.pricesource;

import com.r35157.libs.valuetypes.basic.TradingPair;
import com.r35157.nenjim.component.NenjimComponent;
import org.jetbrains.annotations.NotNull;

/**
 * Obtains prices for one trading pair and announces them to a {@link PriceSink}.
 */
public interface PriceSource extends NenjimComponent {

    @NotNull TradingPair getTradingPair();

    @NotNull ΩPriceSourceNameΩ getSourceName();

    void start(@NotNull PriceSink priceSink);

    void stop();
}
