Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
use ResourceDetail interface
  • Loading branch information
harikrishna-patnala committed Jan 22, 2025
commit 17c436ec1a65d72821aea6c8d16aa3a543dcc233
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,9 @@
import java.util.Map;

import com.cloud.utils.db.GenericDao;
import org.apache.cloudstack.resourcedetail.ResourceDetailsDao;

public interface ClusterDetailsDao extends GenericDao<ClusterDetailsVO, Long> {
public interface ClusterDetailsDao extends GenericDao<ClusterDetailsVO, Long>, ResourceDetailsDao<ClusterDetailsVO> {
Map<String, String> findDetails(long clusterId);

void persist(long clusterId, Map<String, String> details);
Expand All @@ -32,6 +33,4 @@ public interface ClusterDetailsDao extends GenericDao<ClusterDetailsVO, Long> {
void deleteDetails(long clusterId);

String getVmwareDcName(Long clusterId);

String getActualValue(ClusterDetailsVO clusterDetailsVO);
}
Original file line number Diff line number Diff line change
Expand Up @@ -26,19 +26,13 @@
import org.apache.cloudstack.framework.config.ScopedConfigStorage;

import com.cloud.utils.crypt.DBEncryptionUtil;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.db.TransactionLegacy;
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
import org.apache.cloudstack.framework.config.impl.ConfigurationVO;
import org.apache.cloudstack.resourcedetail.ResourceDetailsDaoBase;

import javax.inject.Inject;
public class ClusterDetailsDaoImpl extends ResourceDetailsDaoBase<ClusterDetailsVO> implements ClusterDetailsDao, ScopedConfigStorage {

public class ClusterDetailsDaoImpl extends GenericDaoBase<ClusterDetailsVO, Long> implements ClusterDetailsDao, ScopedConfigStorage {

@Inject
private ConfigurationDao _configDao;
protected final SearchBuilder<ClusterDetailsVO> ClusterSearch;
protected final SearchBuilder<ClusterDetailsVO> DetailSearch;

Expand Down Expand Up @@ -73,6 +67,11 @@ public ClusterDetailsVO findDetail(long clusterId, String name) {
return detail;
}

@Override
public void addDetail(long resourceId, String key, String value, boolean display) {
super.addDetail(new ClusterDetailsVO(resourceId, key, value));
}

@Override
public Map<String, String> findDetails(long clusterId) {
SearchCriteria<ClusterDetailsVO> sc = ClusterSearch.create();
Expand Down Expand Up @@ -168,13 +167,4 @@ private String getCpuMemoryOvercommitRatio(String name) {

return name;
}

@Override
public String getActualValue(ClusterDetailsVO clusterDetailsVO) {
ConfigurationVO configurationVO = _configDao.findByName(clusterDetailsVO.getName());
if (configurationVO != null && configurationVO.isEncrypted()) {
return DBEncryptionUtil.decrypt(clusterDetailsVO.getValue());
}
return clusterDetailsVO.getValue();
}
}
14 changes: 12 additions & 2 deletions engine/schema/src/main/java/com/cloud/dc/ClusterDetailsVO.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@
import javax.persistence.Id;
import javax.persistence.Table;

import org.apache.cloudstack.api.InternalIdentity;
import org.apache.cloudstack.api.ResourceDetail;

@Entity
@Table(name = "cluster_details")
public class ClusterDetailsVO implements InternalIdentity {
public class ClusterDetailsVO implements ResourceDetail {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
Expand Down Expand Up @@ -56,6 +56,11 @@ public long getClusterId() {
return clusterId;
}

@Override
public long getResourceId() {
return clusterId;
}

public String getName() {
return name;
}
Expand All @@ -64,6 +69,11 @@ public String getValue() {
return value;
}

@Override
public boolean isDisplay() {
return true;
}

public void setValue(String value) {
this.value = value;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,4 @@

public interface DataCenterDetailsDao extends GenericDao<DataCenterDetailVO, Long>, ResourceDetailsDao<DataCenterDetailVO> {
void persist(long zoneId, String name, String value);

String getActualValue(DataCenterDetailVO dataCenterDetailVO);
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,26 +16,18 @@
// under the License.
package com.cloud.dc.dao;

import com.cloud.utils.crypt.DBEncryptionUtil;
import org.apache.cloudstack.framework.config.ConfigKey;
import org.apache.cloudstack.framework.config.ConfigKey.Scope;
import org.apache.cloudstack.framework.config.ScopedConfigStorage;
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
import org.apache.cloudstack.framework.config.impl.ConfigurationVO;
import org.apache.cloudstack.resourcedetail.ResourceDetailsDaoBase;

import com.cloud.dc.DataCenterDetailVO;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.db.TransactionLegacy;

import javax.inject.Inject;

public class DataCenterDetailsDaoImpl extends ResourceDetailsDaoBase<DataCenterDetailVO> implements DataCenterDetailsDao, ScopedConfigStorage {

@Inject
private ConfigurationDao _configDao;

private final SearchBuilder<DataCenterDetailVO> DetailSearch;

DataCenterDetailsDaoImpl() {
Expand Down Expand Up @@ -74,13 +66,4 @@ public void persist(long zoneId, String name, String value) {
persist(vo);
txn.commit();
}

@Override
public String getActualValue(DataCenterDetailVO dataCenterDetailVO) {
ConfigurationVO configurationVO = _configDao.findByName(dataCenterDetailVO.getName());
if (configurationVO != null && configurationVO.isEncrypted()) {
return DBEncryptionUtil.decrypt(dataCenterDetailVO.getValue());
}
return dataCenterDetailVO.getValue();
}
}
14 changes: 12 additions & 2 deletions engine/schema/src/main/java/com/cloud/domain/DomainDetailVO.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@
import javax.persistence.Id;
import javax.persistence.Table;

import org.apache.cloudstack.api.InternalIdentity;
import org.apache.cloudstack.api.ResourceDetail;

@Entity
@Table(name = "domain_details")
public class DomainDetailVO implements InternalIdentity {
public class DomainDetailVO implements ResourceDetail {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
Expand Down Expand Up @@ -55,6 +55,11 @@ public long getDomainId() {
return domainId;
}

@Override
public long getResourceId() {
return domainId;
}

public String getName() {
return name;
}
Expand All @@ -63,6 +68,11 @@ public String getValue() {
return value;
}

@Override
public boolean isDisplay() {
return true;
}

public void setValue(String value) {
this.value = value;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,9 @@

import com.cloud.domain.DomainDetailVO;
import com.cloud.utils.db.GenericDao;
import org.apache.cloudstack.resourcedetail.ResourceDetailsDao;

public interface DomainDetailsDao extends GenericDao<DomainDetailVO, Long> {
public interface DomainDetailsDao extends GenericDao<DomainDetailVO, Long>, ResourceDetailsDao<DomainDetailVO> {
Map<String, String> findDetails(long domainId);

void persist(long domainId, Map<String, String> details);
Expand All @@ -31,6 +32,4 @@ public interface DomainDetailsDao extends GenericDao<DomainDetailVO, Long> {
void deleteDetails(long domainId);

void update(long domainId, Map<String, String> details);

String getActualValue(DomainDetailVO domainDetailVO);
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,6 @@

import com.cloud.domain.DomainDetailVO;
import com.cloud.domain.DomainVO;
import com.cloud.utils.crypt.DBEncryptionUtil;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.QueryBuilder;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
Expand All @@ -35,9 +33,9 @@
import org.apache.cloudstack.framework.config.ConfigKey.Scope;
import org.apache.cloudstack.framework.config.ScopedConfigStorage;
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
import org.apache.cloudstack.framework.config.impl.ConfigurationVO;
import org.apache.cloudstack.resourcedetail.ResourceDetailsDaoBase;

public class DomainDetailsDaoImpl extends GenericDaoBase<DomainDetailVO, Long> implements DomainDetailsDao, ScopedConfigStorage {
public class DomainDetailsDaoImpl extends ResourceDetailsDaoBase<DomainDetailVO> implements DomainDetailsDao, ScopedConfigStorage {
protected final SearchBuilder<DomainDetailVO> domainSearch;

@Inject
Expand Down Expand Up @@ -85,6 +83,11 @@ public DomainDetailVO findDetail(long domainId, String name) {
return sc.find();
}

@Override
public void addDetail(long resourceId, String key, String value, boolean display) {
super.addDetail(new DomainDetailVO(resourceId, key, value));
}

@Override
public void deleteDetails(long domainId) {
SearchCriteria<DomainDetailVO> sc = domainSearch.create();
Expand Down Expand Up @@ -129,13 +132,4 @@ public String getConfigValue(long id, ConfigKey<?> key) {
}
return vo == null ? null : getActualValue(vo);
}

@Override
public String getActualValue(DomainDetailVO domainDetailVO) {
ConfigurationVO configurationVO = _configDao.findByName(domainDetailVO.getName());
if (configurationVO != null && configurationVO.isEncrypted()) {
return DBEncryptionUtil.decrypt(domainDetailVO.getValue());
}
return domainDetailVO.getValue();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,9 @@
package com.cloud.storage.dao;


import com.cloud.utils.crypt.DBEncryptionUtil;
import org.apache.cloudstack.framework.config.ConfigKey;
import org.apache.cloudstack.framework.config.ConfigKey.Scope;
import org.apache.cloudstack.framework.config.ScopedConfigStorage;
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
import org.apache.cloudstack.framework.config.impl.ConfigurationVO;
import org.apache.cloudstack.resourcedetail.ResourceDetailsDaoBase;
import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailVO;
Expand All @@ -36,8 +33,6 @@ public class StoragePoolDetailsDaoImpl extends ResourceDetailsDaoBase<StoragePoo

@Inject
PrimaryDataStoreDao _storagePoolDao;
@Inject
private ConfigurationDao _configDao;

public StoragePoolDetailsDaoImpl() {
}
Expand All @@ -61,13 +56,4 @@ public void addDetail(long resourceId, String key, String value, boolean display
}
super.addDetail(new StoragePoolDetailVO(resourceId, key, value, display));
}

@Override
public String getActualValue(StoragePoolDetailVO storagePoolDetailVO) {
ConfigurationVO configurationVO = _configDao.findByName(storagePoolDetailVO.getName());
if (configurationVO != null && configurationVO.isEncrypted()) {
return DBEncryptionUtil.decrypt(storagePoolDetailVO.getValue());
}
return storagePoolDetailVO.getValue();
}
}
14 changes: 12 additions & 2 deletions engine/schema/src/main/java/com/cloud/user/AccountDetailVO.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@
import javax.persistence.Id;
import javax.persistence.Table;

import org.apache.cloudstack.api.InternalIdentity;
import org.apache.cloudstack.api.ResourceDetail;

@Entity
@Table(name = "account_details")
public class AccountDetailVO implements InternalIdentity {
public class AccountDetailVO implements ResourceDetail {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
Expand Down Expand Up @@ -55,6 +55,11 @@ public long getAccountId() {
return accountId;
}

@Override
public long getResourceId() {
return accountId;
}

public String getName() {
return name;
}
Expand All @@ -63,6 +68,11 @@ public String getValue() {
return value;
}

@Override
public boolean isDisplay() {
return true;
}

public void setValue(String value) {
this.value = value;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,9 @@
import java.util.Map;

import com.cloud.utils.db.GenericDao;
import org.apache.cloudstack.resourcedetail.ResourceDetailsDao;

public interface AccountDetailsDao extends GenericDao<AccountDetailVO, Long> {
public interface AccountDetailsDao extends GenericDao<AccountDetailVO, Long>, ResourceDetailsDao<AccountDetailVO> {
Map<String, String> findDetails(long accountId);

void persist(long accountId, Map<String, String> details);
Expand All @@ -34,6 +35,4 @@ public interface AccountDetailsDao extends GenericDao<AccountDetailVO, Long> {
* they will get created
*/
void update(long accountId, Map<String, String> details);

String getActualValue(AccountDetailVO accountDetailVO);
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@

import javax.inject.Inject;

import com.cloud.utils.crypt.DBEncryptionUtil;
import org.apache.cloudstack.framework.config.ConfigKey;
import org.apache.cloudstack.framework.config.ConfigKey.Scope;
import org.apache.cloudstack.framework.config.ScopedConfigStorage;
Expand All @@ -34,16 +33,15 @@
import com.cloud.domain.dao.DomainDao;
import com.cloud.user.dao.AccountDao;

import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.QueryBuilder;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
import com.cloud.utils.db.SearchCriteria.Op;
import com.cloud.utils.db.TransactionLegacy;
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
import org.apache.cloudstack.framework.config.impl.ConfigurationVO;
import org.apache.cloudstack.resourcedetail.ResourceDetailsDaoBase;

public class AccountDetailsDaoImpl extends GenericDaoBase<AccountDetailVO, Long> implements AccountDetailsDao, ScopedConfigStorage {
public class AccountDetailsDaoImpl extends ResourceDetailsDaoBase<AccountDetailVO> implements AccountDetailsDao, ScopedConfigStorage {
protected final SearchBuilder<AccountDetailVO> accountSearch;

@Inject
Expand Down Expand Up @@ -95,6 +93,11 @@ public AccountDetailVO findDetail(long accountId, String name) {
return sc.find();
}

@Override
public void addDetail(long resourceId, String key, String value, boolean display) {
super.addDetail(new AccountDetailVO(resourceId, key, value));
}

@Override
public void deleteDetails(long accountId) {
SearchCriteria<AccountDetailVO> sc = accountSearch.create();
Expand Down Expand Up @@ -154,13 +157,4 @@ public String getConfigValue(long id, ConfigKey<?> key) {
}
return value;
}

@Override
public String getActualValue(AccountDetailVO accountDetailVO) {
ConfigurationVO configurationVO = _configDao.findByName(accountDetailVO.getName());
if (configurationVO != null && configurationVO.isEncrypted()) {
return DBEncryptionUtil.decrypt(accountDetailVO.getValue());
}
return accountDetailVO.getValue();
}
}
Loading