Skip to content

Commit 0471c01

Browse files
committed
Code review comments
1 parent 3b446f1 commit 0471c01

File tree

8 files changed

+43
-29
lines changed

8 files changed

+43
-29
lines changed

ds3-sdk/src/main/java/com/spectralogic/ds3client/metadata/MetadataAccessImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@
3333
* Used to store meta data on Server
3434
*/
3535
public class MetadataAccessImpl implements Ds3ClientHelpers.MetadataAccess {
36-
private final Map<String, Path> fileMapper;
36+
private final ImmutableMap<String, Path> fileMapper;
3737

38-
public MetadataAccessImpl(final Map<String, Path> fileMapper) {
38+
public MetadataAccessImpl(final ImmutableMap<String, Path> fileMapper) {
3939
this.fileMapper = fileMapper;
4040
}
4141

ds3-sdk/src/main/java/com/spectralogic/ds3client/metadata/MetadataReceivedListenerImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
import java.io.IOException;
2323

2424
public class MetadataReceivedListenerImpl implements MetadataReceivedListener {
25-
private String localFilePath = null;
25+
private final String localFilePath;
2626

2727
public MetadataReceivedListenerImpl(final String localFilePath) {
2828
this.localFilePath = localFilePath;

ds3-sdk/src/main/java/com/spectralogic/ds3client/metadata/MetadataRestoreFactory.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,16 @@
1717

1818
import com.spectralogic.ds3client.metadata.interfaces.MetadataRestore;
1919
import com.spectralogic.ds3client.networking.Metadata;
20+
import com.spectralogic.ds3client.utils.Platform;
2021

2122

2223
public class MetadataRestoreFactory {
2324
public MetadataRestore getOSSpecificMetadataRestore(final Metadata metadata, final String filePath) {
2425
final String localOS = MetaDataUtil.getOS();
2526

26-
if (localOS.contains("Windows")) {
27+
if (Platform.isWindows()) {
2728
return new WindowsMetadataRestore(metadata, filePath, localOS);
28-
} else if (localOS.contains("Mac")) {
29+
} else if (Platform.isMac()) {
2930
return new MACMetadataRestore(metadata, filePath, localOS);
3031
} else {
3132
return new PosixMetadataRestore(metadata, filePath, localOS);

ds3-sdk/src/main/java/com/spectralogic/ds3client/utils/Platform.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,21 @@
1616
package com.spectralogic.ds3client.utils;
1717

1818
public final class Platform {
19+
public static final String WINDOWS_SYSTEM_NAME = "windows";
20+
public static final String MAC_SYSTEM_NAME = "mac";
21+
public static final String LINUX_SYSTEM_NAME = "linux";
22+
1923
private Platform() {}
2024

2125
public static boolean isWindows() {
22-
return System.getProperty("os.name").contains("Windows");
26+
return System.getProperty("os.name").toLowerCase().contains(WINDOWS_SYSTEM_NAME);
27+
}
28+
29+
public static boolean isMac() {
30+
return System.getProperty("os.name").toLowerCase().contains(MAC_SYSTEM_NAME);
31+
}
32+
33+
public static boolean isLinux() {
34+
return System.getProperty("os.name").toLowerCase().contains(LINUX_SYSTEM_NAME);
2335
}
2436
}

ds3-sdk/src/test/java/com/spectralogic/ds3client/metadata/MACMetadataRestore_Test.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import com.spectralogic.ds3client.commands.interfaces.MetadataImpl;
2121
import com.spectralogic.ds3client.networking.Headers;
2222
import com.spectralogic.ds3client.networking.Metadata;
23+
import com.spectralogic.ds3client.utils.Platform;
2324
import org.apache.http.Header;
2425
import org.apache.http.message.BasicHeader;
2526
import org.junit.Assert;
@@ -42,7 +43,7 @@ public class MACMetadataRestore_Test {
4243
@Test
4344
public void restoreFileTimes_Test() throws Exception {
4445

45-
if (MetaDataUtil.getOS().contains("Mac")) {
46+
if (Platform.isMac()) {
4647
final SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd-MM-yy:HH:mm");
4748
final BasicFileAttributes attr = Files.readAttributes(file.toPath(), BasicFileAttributes.class);
4849
final BasicHeader basicHeader[] = new BasicHeader[3];

ds3-sdk/src/test/java/com/spectralogic/ds3client/metadata/MetadataAccessImpl_Test.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515

1616
package com.spectralogic.ds3client.metadata;
1717

18+
import com.google.common.collect.ImmutableMap;
1819
import com.spectralogic.ds3client.utils.Platform;
1920
import org.apache.commons.io.FileUtils;
2021
import org.junit.Assume;
@@ -28,7 +29,6 @@
2829
import java.nio.file.Paths;
2930
import java.nio.file.attribute.PosixFileAttributes;
3031
import java.nio.file.attribute.PosixFilePermission;
31-
import java.util.HashMap;
3232
import java.util.Map;
3333
import java.util.Set;
3434

@@ -52,22 +52,22 @@ public void testGettingMetadata() throws IOException, InterruptedException {
5252
Files.setPosixFilePermissions(filePath, permissions);
5353
}
5454

55-
final Map<String, Path> fileMapper = new HashMap<>(1);
55+
final ImmutableMap.Builder<String, Path> fileMapper = ImmutableMap.builder();
5656
fileMapper.put(filePath.toString(), filePath);
57-
final Map<String, String> metadata = new MetadataAccessImpl(fileMapper).getMetadataValue(filePath.toString());
57+
final Map<String, String> metadata = new MetadataAccessImpl(fileMapper.build()).getMetadataValue(filePath.toString());
5858

5959
if (Platform.isWindows()) {
6060
assertEquals(metadata.size(), 13);
6161
} else {
6262
assertEquals(metadata.size(), 10);
6363
}
6464

65-
if (System.getProperty("os.name").toLowerCase().startsWith("mac")) {
66-
assertTrue(metadata.get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_OS).toLowerCase().startsWith("mac"));
67-
} else if (System.getProperty("os.name").toLowerCase().startsWith("linux")) {
68-
assertTrue(metadata.get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_OS).toLowerCase().startsWith("linux"));
65+
if (Platform.isMac()) {
66+
assertTrue(metadata.get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_OS).toLowerCase().startsWith(Platform.MAC_SYSTEM_NAME));
67+
} else if (Platform.isLinux()) {
68+
assertTrue(metadata.get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_OS).toLowerCase().startsWith(Platform.LINUX_SYSTEM_NAME));
6969
} else if (Platform.isWindows()) {
70-
assertTrue(metadata.get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_OS).toLowerCase().startsWith("windows"));
70+
assertTrue(metadata.get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_OS).toLowerCase().startsWith(Platform.WINDOWS_SYSTEM_NAME));
7171
}
7272

7373
if (Platform.isWindows()) {
@@ -95,10 +95,10 @@ public void testMetadataAccessFailureHandler() throws IOException, InterruptedEx
9595
try {
9696
tempDirectory.toFile().setExecutable(false);
9797

98-
final Map<String, Path> fileMapper = new HashMap<>(1);
98+
final ImmutableMap.Builder<String, Path> fileMapper = ImmutableMap.builder();
9999

100100
fileMapper.put(filePath.toString(), filePath);
101-
new MetadataAccessImpl(fileMapper).getMetadataValue(filePath.toString());
101+
new MetadataAccessImpl(fileMapper.build()).getMetadataValue(filePath.toString());
102102
} finally {
103103
tempDirectory.toFile().setExecutable(true);
104104
FileUtils.deleteDirectory(tempDirectory.toFile());
@@ -109,9 +109,9 @@ public void testMetadataAccessFailureHandler() throws IOException, InterruptedEx
109109
public void testMetadataAccessFailureHandlerWindows() {
110110
Assume.assumeTrue(Platform.isWindows());
111111

112-
final Map<String, Path> fileMapper = new HashMap<>(1);
112+
final ImmutableMap.Builder<String, Path> fileMapper = ImmutableMap.builder();
113113

114114
fileMapper.put("file", Paths.get("file"));
115-
new MetadataAccessImpl(fileMapper).getMetadataValue("file");
115+
new MetadataAccessImpl(fileMapper.build()).getMetadataValue("file");
116116
}
117117
}

ds3-sdk/src/test/java/com/spectralogic/ds3client/metadata/MetadataReceivedListenerImpl_Test.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515

1616
package com.spectralogic.ds3client.metadata;
1717

18+
import com.google.common.collect.ImmutableMap;
1819
import com.spectralogic.ds3client.MockedHeadersReturningKeys;
1920
import com.spectralogic.ds3client.commands.interfaces.MetadataImpl;
2021
import com.spectralogic.ds3client.networking.Metadata;
@@ -25,12 +26,10 @@
2526

2627
import java.io.IOException;
2728
import java.nio.file.Files;
28-
import java.nio.file.NoSuchFileException;
2929
import java.nio.file.Path;
3030
import java.nio.file.Paths;
3131
import java.nio.file.attribute.PosixFileAttributes;
3232
import java.nio.file.attribute.PosixFilePermission;
33-
import java.util.HashMap;
3433
import java.util.Map;
3534
import java.util.Set;
3635

@@ -58,9 +57,10 @@ public void testGettingMetadata() throws IOException, InterruptedException {
5857
}
5958

6059
// get permissions
61-
final Map<String, Path> fileMapper = new HashMap<>(1);
60+
final ImmutableMap.Builder<String, Path> fileMapper = ImmutableMap.builder();
6261
fileMapper.put(filePath.toString(), filePath);
63-
final Map<String, String> metadataFromFile = new MetadataAccessImpl(fileMapper).getMetadataValue(filePath.toString());
62+
final ImmutableMap<String, Path> immutableFileMapper = fileMapper.build();
63+
final Map<String, String> metadataFromFile = new MetadataAccessImpl(immutableFileMapper).getMetadataValue(filePath.toString());
6464

6565
// change permissions
6666
if (Platform.isWindows()) {
@@ -82,7 +82,7 @@ public void testGettingMetadata() throws IOException, InterruptedException {
8282

8383
// see that we put back the original metadata
8484
fileMapper.put(filePath.toString(), filePath);
85-
final Map<String, String> metadataFromUpdatedFile = new MetadataAccessImpl(fileMapper).getMetadataValue(filePath.toString());
85+
final Map<String, String> metadataFromUpdatedFile = new MetadataAccessImpl(immutableFileMapper).getMetadataValue(filePath.toString());
8686

8787
if (Platform.isWindows()) {
8888
assertEquals("A", metadataFromUpdatedFile.get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_FLAGS));
@@ -119,9 +119,9 @@ public void testGettingMetadataFailureHandler() throws IOException, InterruptedE
119119
}
120120

121121
// get permissions
122-
final Map<String, Path> fileMapper = new HashMap<>(1);
122+
final ImmutableMap.Builder<String, Path> fileMapper = ImmutableMap.builder();
123123
fileMapper.put(filePath.toString(), filePath);
124-
final Map<String, String> metadataFromFile = new MetadataAccessImpl(fileMapper).getMetadataValue(filePath.toString());
124+
final Map<String, String> metadataFromFile = new MetadataAccessImpl(fileMapper.build()).getMetadataValue(filePath.toString());
125125

126126
FileUtils.deleteDirectory(tempDirectory.toFile());
127127

@@ -147,9 +147,9 @@ public void testGettingMetadataFailureHandlerWindows() throws IOException, Inter
147147

148148
try {
149149
// get permissions
150-
final Map<String, Path> fileMapper = new HashMap<>(1);
150+
final ImmutableMap.Builder<String, Path> fileMapper = ImmutableMap.builder();
151151
fileMapper.put(filePath.toString(), filePath);
152-
final Map<String, String> metadataFromFile = new MetadataAccessImpl(fileMapper).getMetadataValue(filePath.toString());
152+
final Map<String, String> metadataFromFile = new MetadataAccessImpl(fileMapper.build()).getMetadataValue(filePath.toString());
153153

154154
FileUtils.deleteDirectory(tempDirectory.toFile());
155155

ds3-sdk/src/test/java/com/spectralogic/ds3client/metadata/MetadataRestoreFactory_Test.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
public class MetadataRestoreFactory_Test {
2727
@Test
2828
public void testThatRunningOnMacReturnsMacMetaDataRestore() {
29-
Assume.assumeTrue(System.getProperty("os.name").toLowerCase().startsWith("mac"));
29+
Assume.assumeTrue(Platform.isMac());
3030

3131
final Metadata metadata = null;
3232
final String filePath = ".";

0 commit comments

Comments
 (0)