Skip to content

Commit

Permalink
extra ConfigLoader methods
Browse files Browse the repository at this point in the history
  • Loading branch information
JerryShea committed Oct 2, 2024
1 parent a70bec9 commit 51a8083
Showing 1 changed file with 21 additions and 1 deletion.
22 changes: 21 additions & 1 deletion src/main/java/net/openhft/chronicle/wire/utils/ConfigLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import net.openhft.chronicle.core.io.IOTools;
import net.openhft.chronicle.wire.TextWire;
import net.openhft.chronicle.wire.WireType;

import java.io.IOException;
import java.nio.charset.StandardCharsets;
Expand Down Expand Up @@ -51,13 +52,32 @@ public static <T> T loadFromFile(Class<?> classLoader, String filename, Properti
return loadWithProperties(loadFile(classLoader, filename), properties);
}

public static <T> T loadFromFile(Class<T> expectedClass, Class<?> classLoader, String filename, Properties properties) throws IOException {
return loadWithProperties(expectedClass, loadFile(classLoader, filename), properties);
}

@SuppressWarnings("unchecked")
public static <T> T load(String fileAsString) {
return (T) TextWire.from(replaceTokensWithProperties(fileAsString)).readObject();
}

@SuppressWarnings("unchecked")
public static <T> T loadWithProperties(String fileAsString) {
return loadWithProperties(fileAsString, System.getProperties());
}

@SuppressWarnings("unchecked")
public static <T> T loadWithProperties(String fileAsString, Properties properties) {
return (T) TextWire.from(replaceTokensWithProperties(fileAsString, properties)).readObject();
return loadWithProperties(null, fileAsString, properties);
}

@SuppressWarnings("unchecked")
public static <T> T loadWithProperties(Class<T> expectedClass, String fileAsString) {
return loadWithProperties(expectedClass, fileAsString, System.getProperties());
}

@SuppressWarnings("unchecked")
public static <T> T loadWithProperties(Class<T> expectedClass, String fileAsString, Properties properties) {
return WireType.TEXT.fromString(expectedClass, replaceTokensWithProperties(fileAsString, properties));
}
}

0 comments on commit 51a8083

Please sign in to comment.