package name.abuchen.portfolio.online;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.imageio.spi.ServiceRegistry;
public class Factory
{
private static final List<QuoteFeed> FEEDS;
private static final List<SecuritySearchProvider> SEARCH;
private Factory()
{}
public static final List<QuoteFeed> getQuoteFeedProvider()
{
return FEEDS;
}
public static QuoteFeed getQuoteFeedProvider(String feedId)
{
for (QuoteFeed feed : FEEDS)
{
if (feed.getId().equals(feedId))
return feed;
}
return null;
}
public static final List<SecuritySearchProvider> getSearchProvider()
{
return SEARCH;
}
static
{
FEEDS = new ArrayList<>();
Iterator<QuoteFeed> feeds = ServiceRegistry.lookupProviders(QuoteFeed.class);
while (feeds.hasNext())
FEEDS.add(feeds.next());
SEARCH = new ArrayList<>();
Iterator<SecuritySearchProvider> search = ServiceRegistry.lookupProviders(SecuritySearchProvider.class);
while (search.hasNext())
SEARCH.add(search.next());
}
}