56 lines
2.5 KiB
Cython
56 lines
2.5 KiB
Cython
# Licensed to the Apache Software Foundation (ASF) under one
|
|
# or more contributor license agreements. See the NOTICE file
|
|
# distributed with this work for additional information
|
|
# regarding copyright ownership. The ASF licenses this file
|
|
# to you under the Apache License, Version 2.0 (the
|
|
# "License"); you may not use this file except in compliance
|
|
# with the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing,
|
|
# software distributed under the License is distributed on an
|
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
# KIND, either express or implied. See the License for the
|
|
# specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
# distutils: language = c++
|
|
# cython: language_level = 3
|
|
|
|
from pyarrow.includes.common cimport *
|
|
from pyarrow.includes.libparquet_encryption cimport *
|
|
from pyarrow._parquet cimport (ParquetCipher,
|
|
CFileEncryptionProperties,
|
|
CFileDecryptionProperties,
|
|
FileEncryptionProperties,
|
|
FileDecryptionProperties,
|
|
ParquetCipher_AES_GCM_V1,
|
|
ParquetCipher_AES_GCM_CTR_V1)
|
|
from pyarrow.lib cimport _Weakrefable
|
|
|
|
cdef class CryptoFactory(_Weakrefable):
|
|
cdef shared_ptr[CPyCryptoFactory] factory
|
|
cdef init(self, callable_client_factory)
|
|
cdef inline shared_ptr[CPyCryptoFactory] unwrap(self)
|
|
|
|
cdef class EncryptionConfiguration(_Weakrefable):
|
|
cdef shared_ptr[CEncryptionConfiguration] configuration
|
|
cdef inline shared_ptr[CEncryptionConfiguration] unwrap(self) nogil
|
|
|
|
cdef class DecryptionConfiguration(_Weakrefable):
|
|
cdef shared_ptr[CDecryptionConfiguration] configuration
|
|
cdef inline shared_ptr[CDecryptionConfiguration] unwrap(self) nogil
|
|
|
|
cdef class KmsConnectionConfig(_Weakrefable):
|
|
cdef shared_ptr[CKmsConnectionConfig] configuration
|
|
cdef inline shared_ptr[CKmsConnectionConfig] unwrap(self) nogil
|
|
|
|
@staticmethod
|
|
cdef wrap(const CKmsConnectionConfig& config)
|
|
|
|
|
|
cdef shared_ptr[CCryptoFactory] pyarrow_unwrap_cryptofactory(object crypto_factory) except *
|
|
cdef shared_ptr[CKmsConnectionConfig] pyarrow_unwrap_kmsconnectionconfig(object kmsconnectionconfig) except *
|
|
cdef shared_ptr[CEncryptionConfiguration] pyarrow_unwrap_encryptionconfig(object encryptionconfig) except *
|
|
cdef shared_ptr[CDecryptionConfiguration] pyarrow_unwrap_decryptionconfig(object decryptionconfig) except *
|