rdblue commented on a change in pull request #85: Encryption APIs for Iceberg.
URL: https://github.com/apache/incubator-iceberg/pull/85#discussion_r253200370
##########
File path: api/src/main/java/com/netflix/iceberg/Table.java
##########
@@ -185,4 +186,13 @@ default AppendFiles newFastAppend() {
*/
FileIO io();
+ /**
+ * @return an {@link com.netflix.iceberg.encryption.EncryptionManager} to
encrypt and decrypt
+ * data files.
+ */
+ default EncryptionManager encryption() {
Review comment:
Ideally, I'd like to define the API in Iceberg and delegate the
implementation details to EncryptionManager plugins.
Iceberg doesn't currently support options that load parts of the table
implementation through reflection and I think it makes sense to keep it that
way for now. I think the right way to inject an `EncryptionManager` is to plug
in at `TableOperations`. Then it is up to `TableOperations` to determine the
policy from table config, write options, or being hard coded.
Is that reasonable?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]