backend/src/main/java/com/magamochi/ingestion/providers/ContentProviderFactory.java

25 lines
620 B
Java

package com.magamochi.ingestion.providers;
import java.util.Map;
import java.util.Objects;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Component;
@Getter
@Component
@RequiredArgsConstructor
public class ContentProviderFactory {
private final Map<String, ContentProvider> contentProviders;
public ContentProvider getContentProvider(String providerName) {
var provider = contentProviders.get(providerName);
if (Objects.isNull(provider)) {
throw new IllegalArgumentException("No such provider " + providerName);
}
return provider;
}
}