forked from External/mage
* fixed https://sonarcloud.io/project/issues?id=org.xmage%3Amage-root&issues=AWIlv32RgrzAwlaaQ7rP&open=AWIlv32RgrzAwlaaQ7rP * ensure closing of scanner if it was opened * Refactored method in EmpyrialArchAngel to not always return same value. * Refactored method in FalkenrathAristocrat to not always return same value. * Refactored method in GilderBairn to not always return the same value. * fixed left open resources, ensured quiet closing of the streams * Refactored method in IceCave to not always return same value. * Refactored method in KjeldoranRoyalGuard to not always return same value. * Refactored method in LegionsInitiative to not always return same value. * Refactored method in NaturesWill to not always return same value. * added quiet closing method in new streamutils class, used to clean up the connectdialog * Fix small typo * added quiet closing to saveobjectutil * closed resources in savegame method of gamecontroller * properly close resources in loadGame method of GameReplay class * further proper resource closing in ServerMessagesUtil * fixed unclosed resources in copy method in mage framework Copier * closed unclosed resources in copyCompressed method in Copier * ensure closing of filewriter in manasymbols * ensure proper closing of Stream in arcane UI * ensure closing of datagram socket in arcane Util * ensure resource closing in deckimport from clipboard * ensure closing of plugin classloader * ensured closing of zipinputstream resource * ensure closing of fileoutputstream in ScryfallSymbolsSource * ensure closing resources after finishing/canceling download of pictures * remove commented code * move locks to try block to ensure unlocking along all execution paths * remove dangerous instance of double-checked locking * removed dangerous instance of double checked locking in settingsmanager * Removed dangerous instance of double-checked locking in ThemePluginImpl * close resource which did not happen certainly * close another stream * ensure closing of inputstream
30 lines
617 B
Java
30 lines
617 B
Java
package mage.utils;
|
|
|
|
import java.io.Closeable;
|
|
|
|
public final class StreamUtils {
|
|
|
|
/***
|
|
* Quietly closes the closable, ignoring nulls and exceptions
|
|
* @param c - the closable to be closed
|
|
*/
|
|
public static void closeQuietly(Closeable c) {
|
|
if (c != null) {
|
|
try {
|
|
c.close();
|
|
}
|
|
catch (Exception e) {
|
|
}
|
|
}
|
|
}
|
|
|
|
public static void closeQuietly(AutoCloseable ac) {
|
|
if (ac != null) {
|
|
try {
|
|
ac.close();
|
|
}
|
|
catch (Exception e) {
|
|
}
|
|
}
|
|
}
|
|
}
|