Skip to content

Commit

Permalink
Merge pull request apache#1175 from ibuenros/schema-permission
Browse files Browse the repository at this point in the history
Schema files (schema.avsc) will be written with 774 permission.
  • Loading branch information
ibuenros authored Aug 3, 2016
2 parents 6d8dc09 + 00cda84 commit 83453b9
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions gobblin-utility/src/main/java/gobblin/util/AvroUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,8 @@
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.fs.permission.FsAction;
import org.apache.hadoop.fs.permission.FsPermission;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

Expand Down Expand Up @@ -212,6 +214,11 @@ public static Schema parseSchemaFromFile(Path filePath, FileSystem fs) throws IO

public static void writeSchemaToFile(Schema schema, Path filePath, FileSystem fs, boolean overwrite)
throws IOException {
writeSchemaToFile(schema, filePath, fs, overwrite, new FsPermission(FsAction.ALL, FsAction.ALL, FsAction.READ));
}

public static void writeSchemaToFile(Schema schema, Path filePath, FileSystem fs, boolean overwrite, FsPermission perm)
throws IOException {
if (!overwrite) {
Preconditions.checkState(!fs.exists(filePath), filePath + " already exists");
} else {
Expand All @@ -221,6 +228,7 @@ public static void writeSchemaToFile(Schema schema, Path filePath, FileSystem fs
try (DataOutputStream dos = fs.create(filePath)) {
dos.writeChars(schema.toString());
}
fs.setPermission(filePath, perm);
}

/**
Expand Down

0 comments on commit 83453b9

Please sign in to comment.