|
|
|
@ -68,39 +68,38 @@ public class WhiteLabelManagementServiceImpl implements WhiteLabelManagementServ
|
|
|
|
|
private void initializeWhiteLabelThemes() throws MetadataManagementException {
|
|
|
|
|
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId(true);
|
|
|
|
|
WhiteLabelTheme defaultTheme = getDefaultWhiteLabelTheme();
|
|
|
|
|
try {
|
|
|
|
|
Metadata whiteLabelMetadata = getWhiteLabelMetaData(tenantId);
|
|
|
|
|
if (whiteLabelMetadata != null) {
|
|
|
|
|
WhiteLabelTheme whiteLabelTheme = new Gson().fromJson(whiteLabelMetadata.getMetaValue(),
|
|
|
|
|
WhiteLabelTheme.class);
|
|
|
|
|
if (whiteLabelTheme.getDocUrl() == null) {
|
|
|
|
|
whiteLabelTheme.setDocUrl(defaultTheme.getDocUrl());
|
|
|
|
|
Metadata updatedMetadata = constructWhiteLabelThemeMetadata(whiteLabelTheme);
|
|
|
|
|
try {
|
|
|
|
|
MetadataManagementDAOFactory.beginTransaction();
|
|
|
|
|
metadataDAO.updateMetadata(tenantId, updatedMetadata);
|
|
|
|
|
MetadataManagementDAOFactory.commitTransaction();
|
|
|
|
|
if (log.isDebugEnabled()) {
|
|
|
|
|
log.debug("WhiteLabel theme's DocUrl was missing and has been updated to the default value " +
|
|
|
|
|
"for tenant: " + tenantId);
|
|
|
|
|
}
|
|
|
|
|
} catch (TransactionManagementException e) {
|
|
|
|
|
MetadataManagementDAOFactory.rollbackTransaction();
|
|
|
|
|
String transactionErrorMsg = "Transaction failed while updating white label theme for tenant: "
|
|
|
|
|
+ tenantId;
|
|
|
|
|
log.error(transactionErrorMsg, e);
|
|
|
|
|
throw new MetadataManagementException(transactionErrorMsg, e);
|
|
|
|
|
Metadata whiteLabelMetadata = getWhiteLabelMetaData(tenantId);
|
|
|
|
|
if (whiteLabelMetadata != null) {
|
|
|
|
|
WhiteLabelTheme whiteLabelTheme = new Gson().fromJson(whiteLabelMetadata.getMetaValue(),
|
|
|
|
|
WhiteLabelTheme.class);
|
|
|
|
|
if (whiteLabelTheme.getDocUrl() == null) {
|
|
|
|
|
whiteLabelTheme.setDocUrl(defaultTheme.getDocUrl());
|
|
|
|
|
Metadata updatedMetadata = constructWhiteLabelThemeMetadata(whiteLabelTheme);
|
|
|
|
|
try {
|
|
|
|
|
MetadataManagementDAOFactory.beginTransaction();
|
|
|
|
|
metadataDAO.updateMetadata(tenantId, updatedMetadata);
|
|
|
|
|
MetadataManagementDAOFactory.commitTransaction();
|
|
|
|
|
if (log.isDebugEnabled()) {
|
|
|
|
|
log.debug("WhiteLabel theme's DocUrl was missing and has been updated to the default value " +
|
|
|
|
|
"for tenant: " + tenantId);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
addDefaultWhiteLabelThemeIfNotExist(tenantId);
|
|
|
|
|
catch (MetadataManagementDAOException e) {
|
|
|
|
|
MetadataManagementDAOFactory.rollbackTransaction();
|
|
|
|
|
String msg = "Error occurred while fetching white label metadata for tenant: " + tenantId;
|
|
|
|
|
log.error(msg, e);
|
|
|
|
|
throw new MetadataManagementException(msg, e);
|
|
|
|
|
} catch (TransactionManagementException e) {
|
|
|
|
|
String msg = "Transaction failed while updating white label theme for tenant: "
|
|
|
|
|
+ tenantId;
|
|
|
|
|
log.error(msg, e);
|
|
|
|
|
throw new MetadataManagementException(msg, e);
|
|
|
|
|
} finally {
|
|
|
|
|
MetadataManagementDAOFactory.closeConnection();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (MetadataManagementDAOException e) {
|
|
|
|
|
String msg = "Error occurred while fetching white label metadata for tenant: " + tenantId;
|
|
|
|
|
log.error(msg, e);
|
|
|
|
|
throw new MetadataManagementException(msg, e);
|
|
|
|
|
} finally {
|
|
|
|
|
MetadataManagementDAOFactory.closeConnection();
|
|
|
|
|
} else {
|
|
|
|
|
addDefaultWhiteLabelThemeIfNotExist(tenantId);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|