Class JdbcBasePersistenceImpl
java.lang.Object
org.apache.polaris.persistence.relational.jdbc.JdbcBasePersistenceImpl
- All Implemented Interfaces:
org.apache.polaris.core.persistence.BasePersistence,org.apache.polaris.core.persistence.IntegrationPersistence,org.apache.polaris.core.policy.PolicyMappingPersistence
public class JdbcBasePersistenceImpl
extends Object
implements org.apache.polaris.core.persistence.BasePersistence, org.apache.polaris.core.persistence.IntegrationPersistence
-
Constructor Summary
ConstructorsConstructorDescriptionJdbcBasePersistenceImpl(DatasourceOperations databaseOperations, org.apache.polaris.core.persistence.PrincipalSecretsGenerator secretsGenerator, org.apache.polaris.core.storage.PolarisStorageIntegrationProvider storageIntegrationProvider, String realmId) -
Method Summary
Modifier and TypeMethodDescription<T extends org.apache.polaris.core.storage.PolarisStorageConfigurationInfo>
org.apache.polaris.core.storage.PolarisStorageIntegration<T> createStorageIntegration(org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long entityId, org.apache.polaris.core.storage.PolarisStorageConfigurationInfo polarisStorageConfigurationInfo) voiddeleteAll(org.apache.polaris.core.PolarisCallContext callCtx) voiddeleteAllEntityGrantRecords(org.apache.polaris.core.PolarisCallContext callCtx, org.apache.polaris.core.entity.PolarisEntityCore entity, List<org.apache.polaris.core.entity.PolarisGrantRecord> grantsOnGrantee, List<org.apache.polaris.core.entity.PolarisGrantRecord> grantsOnSecurable) voiddeleteAllEntityPolicyMappingRecords(org.apache.polaris.core.PolarisCallContext callCtx, org.apache.polaris.core.entity.PolarisBaseEntity entity, List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> mappingOnTarget, List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> mappingOnPolicy) voiddeleteEntity(org.apache.polaris.core.PolarisCallContext callCtx, org.apache.polaris.core.entity.PolarisBaseEntity entity) voiddeleteFromGrantRecords(org.apache.polaris.core.PolarisCallContext callCtx, org.apache.polaris.core.entity.PolarisGrantRecord grantRec) voiddeleteFromPolicyMappingRecords(org.apache.polaris.core.PolarisCallContext callCtx, org.apache.polaris.core.policy.PolarisPolicyMappingRecord record) voiddeletePrincipalSecrets(org.apache.polaris.core.PolarisCallContext callCtx, String clientId, long principalId) longgenerateNewId(org.apache.polaris.core.PolarisCallContext callCtx) org.apache.polaris.core.entity.PolarisPrincipalSecretsgenerateNewPrincipalSecrets(org.apache.polaris.core.PolarisCallContext callCtx, String principalName, long principalId) booleanhasChildren(org.apache.polaris.core.PolarisCallContext callContext, org.apache.polaris.core.entity.PolarisEntityType optionalEntityType, long catalogId, long parentId) <T extends org.apache.polaris.core.entity.PolarisEntity & org.apache.polaris.core.entity.LocationBasedEntity>
Optional<Optional<String>> hasOverlappingSiblings(org.apache.polaris.core.PolarisCallContext callContext, T entity) <T> org.apache.polaris.core.persistence.pagination.Page<T> listEntities(org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long parentId, org.apache.polaris.core.entity.PolarisEntityType entityType, Predicate<org.apache.polaris.core.entity.PolarisBaseEntity> entityFilter, Function<org.apache.polaris.core.entity.PolarisBaseEntity, T> transformer, org.apache.polaris.core.persistence.pagination.PageToken pageToken) org.apache.polaris.core.persistence.pagination.Page<org.apache.polaris.core.entity.EntityNameLookupRecord> listEntities(org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long parentId, org.apache.polaris.core.entity.PolarisEntityType entityType, Predicate<org.apache.polaris.core.entity.PolarisBaseEntity> entityFilter, org.apache.polaris.core.persistence.pagination.PageToken pageToken) org.apache.polaris.core.persistence.pagination.Page<org.apache.polaris.core.entity.EntityNameLookupRecord> listEntities(org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long parentId, org.apache.polaris.core.entity.PolarisEntityType entityType, org.apache.polaris.core.persistence.pagination.PageToken pageToken) List<org.apache.polaris.core.entity.PolarisGrantRecord> loadAllGrantRecordsOnGrantee(org.apache.polaris.core.PolarisCallContext callCtx, long granteeCatalogId, long granteeId) List<org.apache.polaris.core.entity.PolarisGrantRecord> loadAllGrantRecordsOnSecurable(org.apache.polaris.core.PolarisCallContext callCtx, long securableCatalogId, long securableId) List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> loadAllPoliciesOnTarget(org.apache.polaris.core.PolarisCallContext callCtx, long targetCatalogId, long targetId) List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> loadAllTargetsOnPolicy(org.apache.polaris.core.PolarisCallContext callCtx, long policyCatalogId, long policyId, int policyTypeCode) <T extends org.apache.polaris.core.storage.PolarisStorageConfigurationInfo>
org.apache.polaris.core.storage.PolarisStorageIntegration<T> loadPolarisStorageIntegration(org.apache.polaris.core.PolarisCallContext callContext, org.apache.polaris.core.entity.PolarisBaseEntity entity) List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> loadPoliciesOnTargetByType(org.apache.polaris.core.PolarisCallContext callCtx, long targetCatalogId, long targetId, int policyTypeCode) org.apache.polaris.core.entity.PolarisPrincipalSecretsloadPrincipalSecrets(org.apache.polaris.core.PolarisCallContext callCtx, String clientId) List<org.apache.polaris.core.entity.PolarisBaseEntity> lookupEntities(org.apache.polaris.core.PolarisCallContext callCtx, List<org.apache.polaris.core.entity.PolarisEntityId> entityIds) org.apache.polaris.core.entity.PolarisBaseEntitylookupEntity(org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long entityId, int typeCode) org.apache.polaris.core.entity.PolarisBaseEntitylookupEntityByName(org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long parentId, int typeCode, String name) intlookupEntityGrantRecordsVersion(org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long entityId) List<org.apache.polaris.core.entity.PolarisChangeTrackingVersions> lookupEntityVersions(org.apache.polaris.core.PolarisCallContext callCtx, List<org.apache.polaris.core.entity.PolarisEntityId> entityIds) org.apache.polaris.core.entity.PolarisGrantRecordlookupGrantRecord(org.apache.polaris.core.PolarisCallContext callCtx, long securableCatalogId, long securableId, long granteeCatalogId, long granteeId, int privilegeCode) org.apache.polaris.core.policy.PolarisPolicyMappingRecordlookupPolicyMappingRecord(org.apache.polaris.core.PolarisCallContext callCtx, long targetCatalogId, long targetId, int policyTypeCode, long policyCatalogId, long policyId) <T extends org.apache.polaris.core.storage.PolarisStorageConfigurationInfo>
voidpersistStorageIntegrationIfNeeded(org.apache.polaris.core.PolarisCallContext callContext, org.apache.polaris.core.entity.PolarisBaseEntity entity, org.apache.polaris.core.storage.PolarisStorageIntegration<T> storageIntegration) org.apache.polaris.core.entity.PolarisPrincipalSecretsrotatePrincipalSecrets(org.apache.polaris.core.PolarisCallContext callCtx, String clientId, long principalId, boolean reset, String oldSecretHash) voidwriteEntities(org.apache.polaris.core.PolarisCallContext callCtx, List<org.apache.polaris.core.entity.PolarisBaseEntity> entities, List<org.apache.polaris.core.entity.PolarisBaseEntity> originalEntities) voidwriteEntity(org.apache.polaris.core.PolarisCallContext callCtx, org.apache.polaris.core.entity.PolarisBaseEntity entity, boolean nameOrParentChanged, org.apache.polaris.core.entity.PolarisBaseEntity originalEntity) voidwriteToGrantRecords(org.apache.polaris.core.PolarisCallContext callCtx, org.apache.polaris.core.entity.PolarisGrantRecord grantRec) voidwriteToPolicyMappingRecords(org.apache.polaris.core.PolarisCallContext callCtx, org.apache.polaris.core.policy.PolarisPolicyMappingRecord record) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.polaris.core.persistence.BasePersistence
detach, lookupEntityIdAndSubTypeByName
-
Constructor Details
-
JdbcBasePersistenceImpl
public JdbcBasePersistenceImpl(DatasourceOperations databaseOperations, org.apache.polaris.core.persistence.PrincipalSecretsGenerator secretsGenerator, org.apache.polaris.core.storage.PolarisStorageIntegrationProvider storageIntegrationProvider, String realmId)
-
-
Method Details
-
generateNewId
public long generateNewId(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx) - Specified by:
generateNewIdin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
writeEntity
public void writeEntity(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull org.apache.polaris.core.entity.PolarisBaseEntity entity, boolean nameOrParentChanged, org.apache.polaris.core.entity.PolarisBaseEntity originalEntity) - Specified by:
writeEntityin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
writeEntities
public void writeEntities(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull List<org.apache.polaris.core.entity.PolarisBaseEntity> entities, List<org.apache.polaris.core.entity.PolarisBaseEntity> originalEntities) - Specified by:
writeEntitiesin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
writeToGrantRecords
public void writeToGrantRecords(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull org.apache.polaris.core.entity.PolarisGrantRecord grantRec) - Specified by:
writeToGrantRecordsin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
deleteEntity
public void deleteEntity(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull org.apache.polaris.core.entity.PolarisBaseEntity entity) - Specified by:
deleteEntityin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
deleteFromGrantRecords
public void deleteFromGrantRecords(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull org.apache.polaris.core.entity.PolarisGrantRecord grantRec) - Specified by:
deleteFromGrantRecordsin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
deleteAllEntityGrantRecords
public void deleteAllEntityGrantRecords(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull org.apache.polaris.core.entity.PolarisEntityCore entity, @Nonnull List<org.apache.polaris.core.entity.PolarisGrantRecord> grantsOnGrantee, @Nonnull List<org.apache.polaris.core.entity.PolarisGrantRecord> grantsOnSecurable) - Specified by:
deleteAllEntityGrantRecordsin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
deleteAll
public void deleteAll(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx) - Specified by:
deleteAllin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
lookupEntity
public org.apache.polaris.core.entity.PolarisBaseEntity lookupEntity(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long entityId, int typeCode) - Specified by:
lookupEntityin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
lookupEntityByName
public org.apache.polaris.core.entity.PolarisBaseEntity lookupEntityByName(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long parentId, int typeCode, @Nonnull String name) - Specified by:
lookupEntityByNamein interfaceorg.apache.polaris.core.persistence.BasePersistence
-
lookupEntities
@Nonnull public List<org.apache.polaris.core.entity.PolarisBaseEntity> lookupEntities(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, List<org.apache.polaris.core.entity.PolarisEntityId> entityIds) - Specified by:
lookupEntitiesin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
lookupEntityVersions
@Nonnull public List<org.apache.polaris.core.entity.PolarisChangeTrackingVersions> lookupEntityVersions(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, List<org.apache.polaris.core.entity.PolarisEntityId> entityIds) - Specified by:
lookupEntityVersionsin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
listEntities
@Nonnull public org.apache.polaris.core.persistence.pagination.Page<org.apache.polaris.core.entity.EntityNameLookupRecord> listEntities(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long parentId, @Nonnull org.apache.polaris.core.entity.PolarisEntityType entityType, @Nonnull org.apache.polaris.core.persistence.pagination.PageToken pageToken) - Specified by:
listEntitiesin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
listEntities
@Nonnull public org.apache.polaris.core.persistence.pagination.Page<org.apache.polaris.core.entity.EntityNameLookupRecord> listEntities(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long parentId, @Nonnull org.apache.polaris.core.entity.PolarisEntityType entityType, @Nonnull Predicate<org.apache.polaris.core.entity.PolarisBaseEntity> entityFilter, @Nonnull org.apache.polaris.core.persistence.pagination.PageToken pageToken) - Specified by:
listEntitiesin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
listEntities
@Nonnull public <T> org.apache.polaris.core.persistence.pagination.Page<T> listEntities(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long parentId, org.apache.polaris.core.entity.PolarisEntityType entityType, @Nonnull Predicate<org.apache.polaris.core.entity.PolarisBaseEntity> entityFilter, @Nonnull Function<org.apache.polaris.core.entity.PolarisBaseEntity, T> transformer, @Nonnull org.apache.polaris.core.persistence.pagination.PageToken pageToken) - Specified by:
listEntitiesin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
lookupEntityGrantRecordsVersion
public int lookupEntityGrantRecordsVersion(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long entityId) - Specified by:
lookupEntityGrantRecordsVersionin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
lookupGrantRecord
public org.apache.polaris.core.entity.PolarisGrantRecord lookupGrantRecord(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long securableCatalogId, long securableId, long granteeCatalogId, long granteeId, int privilegeCode) - Specified by:
lookupGrantRecordin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
loadAllGrantRecordsOnSecurable
@Nonnull public List<org.apache.polaris.core.entity.PolarisGrantRecord> loadAllGrantRecordsOnSecurable(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long securableCatalogId, long securableId) - Specified by:
loadAllGrantRecordsOnSecurablein interfaceorg.apache.polaris.core.persistence.BasePersistence
-
loadAllGrantRecordsOnGrantee
@Nonnull public List<org.apache.polaris.core.entity.PolarisGrantRecord> loadAllGrantRecordsOnGrantee(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long granteeCatalogId, long granteeId) - Specified by:
loadAllGrantRecordsOnGranteein interfaceorg.apache.polaris.core.persistence.BasePersistence
-
hasChildren
public boolean hasChildren(@Nonnull org.apache.polaris.core.PolarisCallContext callContext, org.apache.polaris.core.entity.PolarisEntityType optionalEntityType, long catalogId, long parentId) - Specified by:
hasChildrenin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
hasOverlappingSiblings
public <T extends org.apache.polaris.core.entity.PolarisEntity & org.apache.polaris.core.entity.LocationBasedEntity> Optional<Optional<String>> hasOverlappingSiblings(@Nonnull org.apache.polaris.core.PolarisCallContext callContext, T entity) - Specified by:
hasOverlappingSiblingsin interfaceorg.apache.polaris.core.persistence.BasePersistence
-
loadPrincipalSecrets
@Nullable public org.apache.polaris.core.entity.PolarisPrincipalSecrets loadPrincipalSecrets(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull String clientId) - Specified by:
loadPrincipalSecretsin interfaceorg.apache.polaris.core.persistence.IntegrationPersistence
-
generateNewPrincipalSecrets
@Nonnull public org.apache.polaris.core.entity.PolarisPrincipalSecrets generateNewPrincipalSecrets(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull String principalName, long principalId) - Specified by:
generateNewPrincipalSecretsin interfaceorg.apache.polaris.core.persistence.IntegrationPersistence
-
rotatePrincipalSecrets
@Nullable public org.apache.polaris.core.entity.PolarisPrincipalSecrets rotatePrincipalSecrets(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull String clientId, long principalId, boolean reset, @Nonnull String oldSecretHash) - Specified by:
rotatePrincipalSecretsin interfaceorg.apache.polaris.core.persistence.IntegrationPersistence
-
deletePrincipalSecrets
public void deletePrincipalSecrets(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull String clientId, long principalId) - Specified by:
deletePrincipalSecretsin interfaceorg.apache.polaris.core.persistence.IntegrationPersistence
-
writeToPolicyMappingRecords
public void writeToPolicyMappingRecords(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull org.apache.polaris.core.policy.PolarisPolicyMappingRecord record) - Specified by:
writeToPolicyMappingRecordsin interfaceorg.apache.polaris.core.policy.PolicyMappingPersistence
-
deleteFromPolicyMappingRecords
public void deleteFromPolicyMappingRecords(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull org.apache.polaris.core.policy.PolarisPolicyMappingRecord record) - Specified by:
deleteFromPolicyMappingRecordsin interfaceorg.apache.polaris.core.policy.PolicyMappingPersistence
-
deleteAllEntityPolicyMappingRecords
public void deleteAllEntityPolicyMappingRecords(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, @Nonnull org.apache.polaris.core.entity.PolarisBaseEntity entity, @Nonnull List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> mappingOnTarget, @Nonnull List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> mappingOnPolicy) - Specified by:
deleteAllEntityPolicyMappingRecordsin interfaceorg.apache.polaris.core.policy.PolicyMappingPersistence
-
lookupPolicyMappingRecord
@Nullable public org.apache.polaris.core.policy.PolarisPolicyMappingRecord lookupPolicyMappingRecord(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long targetCatalogId, long targetId, int policyTypeCode, long policyCatalogId, long policyId) - Specified by:
lookupPolicyMappingRecordin interfaceorg.apache.polaris.core.policy.PolicyMappingPersistence
-
loadPoliciesOnTargetByType
@Nonnull public List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> loadPoliciesOnTargetByType(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long targetCatalogId, long targetId, int policyTypeCode) - Specified by:
loadPoliciesOnTargetByTypein interfaceorg.apache.polaris.core.policy.PolicyMappingPersistence
-
loadAllPoliciesOnTarget
@Nonnull public List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> loadAllPoliciesOnTarget(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long targetCatalogId, long targetId) - Specified by:
loadAllPoliciesOnTargetin interfaceorg.apache.polaris.core.policy.PolicyMappingPersistence
-
loadAllTargetsOnPolicy
@Nonnull public List<org.apache.polaris.core.policy.PolarisPolicyMappingRecord> loadAllTargetsOnPolicy(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long policyCatalogId, long policyId, int policyTypeCode) - Specified by:
loadAllTargetsOnPolicyin interfaceorg.apache.polaris.core.policy.PolicyMappingPersistence
-
createStorageIntegration
@Nullable public <T extends org.apache.polaris.core.storage.PolarisStorageConfigurationInfo> org.apache.polaris.core.storage.PolarisStorageIntegration<T> createStorageIntegration(@Nonnull org.apache.polaris.core.PolarisCallContext callCtx, long catalogId, long entityId, org.apache.polaris.core.storage.PolarisStorageConfigurationInfo polarisStorageConfigurationInfo) - Specified by:
createStorageIntegrationin interfaceorg.apache.polaris.core.persistence.IntegrationPersistence
-
persistStorageIntegrationIfNeeded
public <T extends org.apache.polaris.core.storage.PolarisStorageConfigurationInfo> void persistStorageIntegrationIfNeeded(@Nonnull org.apache.polaris.core.PolarisCallContext callContext, @Nonnull org.apache.polaris.core.entity.PolarisBaseEntity entity, @Nullable org.apache.polaris.core.storage.PolarisStorageIntegration<T> storageIntegration) - Specified by:
persistStorageIntegrationIfNeededin interfaceorg.apache.polaris.core.persistence.IntegrationPersistence
-
loadPolarisStorageIntegration
@Nullable public <T extends org.apache.polaris.core.storage.PolarisStorageConfigurationInfo> org.apache.polaris.core.storage.PolarisStorageIntegration<T> loadPolarisStorageIntegration(@Nonnull org.apache.polaris.core.PolarisCallContext callContext, @Nonnull org.apache.polaris.core.entity.PolarisBaseEntity entity) - Specified by:
loadPolarisStorageIntegrationin interfaceorg.apache.polaris.core.persistence.IntegrationPersistence
-