EntandoBundleComponentUsageService.java
package org.entando.kubernetes.service.digitalexchange.component;
import org.entando.kubernetes.client.core.EntandoCoreClient;
import org.entando.kubernetes.model.bundle.ComponentType;
import org.entando.kubernetes.model.entandocore.EntandoCoreComponentUsage;
import org.entando.kubernetes.model.entandocore.EntandoCoreComponentUsage.IrrelevantComponentUsage;
import org.springframework.stereotype.Service;
@Service
public class EntandoBundleComponentUsageService {
private final EntandoCoreClient client;
public EntandoBundleComponentUsageService(EntandoCoreClient client) {
this.client = client;
}
public EntandoCoreComponentUsage getUsage(ComponentType componentType, String componentCode) {
switch (componentType) {
case WIDGET:
return this.client.getWidgetUsage(componentCode);
case GROUP:
return this.client.getGroupUsage(componentCode);
case FRAGMENT:
return this.client.getFragmentUsage(componentCode);
case CATEGORY:
return this.client.getCategoryUsage(componentCode);
case PAGE:
return this.client.getPageUsage(componentCode);
case PAGE_TEMPLATE:
return this.client.getPageModelUsage(componentCode);
case CONTENT_TYPE:
return this.client.getContentTypeUsage(componentCode);
case CONTENT_TEMPLATE:
return this.client.getContentModelUsage(componentCode);
default:
return new IrrelevantComponentUsage(componentCode);
}
}
}