security: Stabilize AdvancedTlsX509KeyManager.
This PR is a part of 'Stabilize Advanced TLS' effort. Clean up, improve javadoc, de-experimentalize of AdvancedTlsX509KeyManager, add a unit test (e2e already exists).
Please address the failing tests. :)
Fixed (few styling things)
@matthewstevenson88, do you want us to wait for your approval before this goes in?
Thanks @ejona86. LGTM, and ok to merge once the FakeClock change is done.
API review meeting notes:
an object that caller should close when the file refreshes are not needed
s/not/no longer/
We noticed we had looked at this API before, and had talked about changing the argument order. https://github.com/grpc/grpc-java/issues/8024#issuecomment-1220003981 . Although I did today notice that KeyStore uses the argument order seen here. https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/security/KeyStore.html#setKeyEntry(java.lang.String,byte%5B%5D,java.security.cert.Certificate%5B%5D)
We probably would let y'all (security team) decide how y'all feel about the different argument order. It is mostly a problem for File-based reading, because there's not different types to the arguments.