if (subscription == null) {
return null;
}
try {
Cartridge cartridge = new Cartridge();
cartridge.setCartridgeType(subscription.getCartridgeInfo()
.getType());
cartridge.setMultiTenant(subscription.getCartridgeInfo()
.getMultiTenant());
cartridge
.setProvider(subscription.getCartridgeInfo().getProvider());
cartridge.setVersion(subscription.getCartridgeInfo().getVersion());
cartridge.setDescription(subscription.getCartridgeInfo()
.getDescription());
cartridge.setDisplayName(subscription.getCartridgeInfo()
.getDisplayName());
cartridge.setCartridgeAlias(subscription.getAlias());
cartridge.setHostName(subscription.getHostName());
cartridge.setMappedDomain(subscription.getMappedDomain());
if (subscription.getRepository() != null) {
cartridge.setRepoURL(subscription.getRepository().getUrl());
}
if (subscription instanceof DataCartridgeSubscription) {
DataCartridgeSubscription dataCartridgeSubscription = (DataCartridgeSubscription) subscription;
cartridge.setDbHost(dataCartridgeSubscription.getDBHost());
cartridge.setDbUserName(dataCartridgeSubscription
.getDBUsername());
cartridge
.setPassword(dataCartridgeSubscription.getDBPassword());
}
if (subscription.getLbClusterId() != null
&& !subscription.getLbClusterId().isEmpty()) {
cartridge.setLbClusterId(subscription.getLbClusterId());
}
cartridge.setStatus(subscription.getSubscriptionStatus());
cartridge.setPortMappings(subscription.getCartridgeInfo()
.getPortMappings());
if(subscription.getCartridgeInfo().getLbConfig() != null && subscription.getCartridgeInfo().getProperties() != null) {
for(Property property: subscription.getCartridgeInfo().getProperties()) {
if(property.getName().equals("load.balancer")) {
cartridge.setLoadBalancer(true);
}
}
}
return cartridge;