mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2024-12-13 11:40:29 +00:00
Merge pull request #233 from SquidDev-CC/feature/file-handle-errors
Provide various error messages for file handles
This commit is contained in:
commit
2fd01b2adf
@ -292,7 +292,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
|
|
||||||
}
|
}
|
||||||
} catch( FileSystemException e ) {
|
} catch( FileSystemException e ) {
|
||||||
return null;
|
return new Object[] { null, e.getMessage() };
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
case 12:
|
case 12:
|
||||||
@ -372,6 +372,8 @@ public class FSAPI implements ILuaAPI
|
|||||||
private static Object[] wrapBufferedReader( final IMountedFileNormal reader )
|
private static Object[] wrapBufferedReader( final IMountedFileNormal reader )
|
||||||
{
|
{
|
||||||
return new Object[] { new ILuaObject() {
|
return new Object[] { new ILuaObject() {
|
||||||
|
private boolean open = true;
|
||||||
|
|
||||||
@Nonnull
|
@Nonnull
|
||||||
@Override
|
@Override
|
||||||
public String[] getMethodNames()
|
public String[] getMethodNames()
|
||||||
@ -391,6 +393,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
case 0:
|
case 0:
|
||||||
{
|
{
|
||||||
// readLine
|
// readLine
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed file" );
|
||||||
try {
|
try {
|
||||||
String line = reader.readLine();
|
String line = reader.readLine();
|
||||||
if( line != null ) {
|
if( line != null ) {
|
||||||
@ -405,6 +408,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
case 1:
|
case 1:
|
||||||
{
|
{
|
||||||
// readAll
|
// readAll
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed file" );
|
||||||
try {
|
try {
|
||||||
StringBuilder result = new StringBuilder( "" );
|
StringBuilder result = new StringBuilder( "" );
|
||||||
String line = reader.readLine();
|
String line = reader.readLine();
|
||||||
@ -425,6 +429,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
// close
|
// close
|
||||||
try {
|
try {
|
||||||
reader.close();
|
reader.close();
|
||||||
|
open = false;
|
||||||
return null;
|
return null;
|
||||||
} catch( IOException e ) {
|
} catch( IOException e ) {
|
||||||
return null;
|
return null;
|
||||||
@ -442,6 +447,8 @@ public class FSAPI implements ILuaAPI
|
|||||||
private static Object[] wrapBufferedWriter( final IMountedFileNormal writer )
|
private static Object[] wrapBufferedWriter( final IMountedFileNormal writer )
|
||||||
{
|
{
|
||||||
return new Object[] { new ILuaObject() {
|
return new Object[] { new ILuaObject() {
|
||||||
|
private boolean open = true;
|
||||||
|
|
||||||
@Nonnull
|
@Nonnull
|
||||||
@Override
|
@Override
|
||||||
public String[] getMethodNames()
|
public String[] getMethodNames()
|
||||||
@ -462,6 +469,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
case 0:
|
case 0:
|
||||||
{
|
{
|
||||||
// write
|
// write
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed file" );
|
||||||
String text;
|
String text;
|
||||||
if( args.length > 0 && args[0] != null ) {
|
if( args.length > 0 && args[0] != null ) {
|
||||||
text = args[0].toString();
|
text = args[0].toString();
|
||||||
@ -478,6 +486,8 @@ public class FSAPI implements ILuaAPI
|
|||||||
case 1:
|
case 1:
|
||||||
{
|
{
|
||||||
// writeLine
|
// writeLine
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed file" );
|
||||||
|
|
||||||
String text;
|
String text;
|
||||||
if( args.length > 0 && args[0] != null ) {
|
if( args.length > 0 && args[0] != null ) {
|
||||||
text = args[0].toString();
|
text = args[0].toString();
|
||||||
@ -496,6 +506,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
// close
|
// close
|
||||||
try {
|
try {
|
||||||
writer.close();
|
writer.close();
|
||||||
|
open = false;
|
||||||
return null;
|
return null;
|
||||||
} catch( IOException e ) {
|
} catch( IOException e ) {
|
||||||
return null;
|
return null;
|
||||||
@ -504,6 +515,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
case 3:
|
case 3:
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed file" );
|
||||||
writer.flush();
|
writer.flush();
|
||||||
return null;
|
return null;
|
||||||
} catch ( IOException e ) {
|
} catch ( IOException e ) {
|
||||||
@ -524,6 +536,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
{
|
{
|
||||||
|
|
||||||
return new Object[] { new ILuaObject() {
|
return new Object[] { new ILuaObject() {
|
||||||
|
private boolean open = true;
|
||||||
|
|
||||||
@Nonnull
|
@Nonnull
|
||||||
@Override
|
@Override
|
||||||
@ -541,6 +554,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
case 0:
|
case 0:
|
||||||
{
|
{
|
||||||
// read
|
// read
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed file" );
|
||||||
try {
|
try {
|
||||||
int b = reader.read();
|
int b = reader.read();
|
||||||
if( b != -1 ) {
|
if( b != -1 ) {
|
||||||
@ -557,6 +571,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
//close
|
//close
|
||||||
try {
|
try {
|
||||||
reader.close();
|
reader.close();
|
||||||
|
open = false;
|
||||||
return null;
|
return null;
|
||||||
} catch( IOException e ) {
|
} catch( IOException e ) {
|
||||||
return null;
|
return null;
|
||||||
@ -576,6 +591,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
{
|
{
|
||||||
|
|
||||||
return new Object[] { new ILuaObject() {
|
return new Object[] { new ILuaObject() {
|
||||||
|
private boolean open = true;
|
||||||
|
|
||||||
@Nonnull
|
@Nonnull
|
||||||
@Override
|
@Override
|
||||||
@ -594,6 +610,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
case 0:
|
case 0:
|
||||||
{
|
{
|
||||||
// write
|
// write
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed file" );
|
||||||
try {
|
try {
|
||||||
if( args.length > 0 && args[0] instanceof Number )
|
if( args.length > 0 && args[0] instanceof Number )
|
||||||
{
|
{
|
||||||
@ -610,6 +627,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
//close
|
//close
|
||||||
try {
|
try {
|
||||||
writer.close();
|
writer.close();
|
||||||
|
open = false;
|
||||||
return null;
|
return null;
|
||||||
} catch( IOException e ) {
|
} catch( IOException e ) {
|
||||||
return null;
|
return null;
|
||||||
@ -617,6 +635,7 @@ public class FSAPI implements ILuaAPI
|
|||||||
}
|
}
|
||||||
case 2:
|
case 2:
|
||||||
{
|
{
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed file" );
|
||||||
try {
|
try {
|
||||||
writer.flush();
|
writer.flush();
|
||||||
return null;
|
return null;
|
||||||
|
@ -73,6 +73,7 @@ public class HTTPAPI implements ILuaAPI
|
|||||||
private static ILuaObject wrapBufferedReader( final BufferedReader reader, final int responseCode, final Map<String, String> responseHeaders )
|
private static ILuaObject wrapBufferedReader( final BufferedReader reader, final int responseCode, final Map<String, String> responseHeaders )
|
||||||
{
|
{
|
||||||
return new ILuaObject() {
|
return new ILuaObject() {
|
||||||
|
private boolean open = true;
|
||||||
@Nonnull
|
@Nonnull
|
||||||
@Override
|
@Override
|
||||||
public String[] getMethodNames()
|
public String[] getMethodNames()
|
||||||
@ -94,6 +95,7 @@ public class HTTPAPI implements ILuaAPI
|
|||||||
case 0:
|
case 0:
|
||||||
{
|
{
|
||||||
// readLine
|
// readLine
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed response" );
|
||||||
try {
|
try {
|
||||||
String line = reader.readLine();
|
String line = reader.readLine();
|
||||||
if( line != null ) {
|
if( line != null ) {
|
||||||
@ -108,6 +110,7 @@ public class HTTPAPI implements ILuaAPI
|
|||||||
case 1:
|
case 1:
|
||||||
{
|
{
|
||||||
// readAll
|
// readAll
|
||||||
|
if( !open ) throw new LuaException( "attempt to use a closed response" );
|
||||||
try {
|
try {
|
||||||
StringBuilder result = new StringBuilder( "" );
|
StringBuilder result = new StringBuilder( "" );
|
||||||
String line = reader.readLine();
|
String line = reader.readLine();
|
||||||
@ -128,6 +131,7 @@ public class HTTPAPI implements ILuaAPI
|
|||||||
// close
|
// close
|
||||||
try {
|
try {
|
||||||
reader.close();
|
reader.close();
|
||||||
|
open = false;
|
||||||
return null;
|
return null;
|
||||||
} catch( IOException e ) {
|
} catch( IOException e ) {
|
||||||
return null;
|
return null;
|
||||||
|
Loading…
Reference in New Issue
Block a user