emkornfield commented on code in PR #12763:
URL: https://github.com/apache/arrow/pull/12763#discussion_r852616341


##########
cpp/src/arrow/filesystem/gcsfs.cc:
##########
@@ -596,9 +639,15 @@ class GcsFileSystem::Impl {
   }
 
   static FileInfo ToFileInfo(const std::string& full_path,
-                             const gcs::ObjectMetadata& meta) {
-    if (IsDirectory(meta)) {
-      return FileInfo(full_path, FileType::Directory);
+                             const gcs::ObjectMetadata& meta,
+                             bool normalize_directories = false) {

Review Comment:
   per comment above, there are some strange inconsistencies that need to be 
handled with directories, this was necessary to fix them.



##########
cpp/src/arrow/filesystem/gcsfs.h:
##########
@@ -27,11 +27,37 @@
 namespace arrow {
 namespace fs {
 
-struct GcsCredentials;
+// Opaque wrapper for GCS's library credentials to avoid exposing in Arrow 
headers.
+struct GcsCredentialsHolder;
+class GcsFileSystem;
+
+/// \brief Container for GCS Credentials an information necessary to recreate
+///  them.
+class GcsCredentials {
+ public:
+  bool Equals(const GcsCredentials& other) const;
+  bool anonymous() const { return anonymous_; }
+  const std::string& access_token() { return access_token_; }
+  TimePoint expiration() const { return expiration_; }
+  const std::string& target_service_account() { return 
target_service_account_; }
+  const std::string& json_credentials() { return json_credentials_; }
+  const std::shared_ptr<GcsCredentialsHolder>& holder() const { return 
holder_; }

Review Comment:
   done.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to