@Override public void encodeRest(final ActiveMQBuffer buffer) { buffer.writeInt(exception.getType().getCode()); buffer.writeNullableString(exception.getMessage()); }
@Override public void writeDirect(final ByteBuffer bytes, final boolean sync, final IOCallback callback) { if (callback == null) { throw new NullPointerException("callback parameter need to be set"); } try { internalWrite(bytes, sync, callback, true); } catch (Exception e) { callback.onError(ActiveMQExceptionType.GENERIC_EXCEPTION.getCode(), e.getMessage()); } }
@Override public void writeDirect(final ByteBuffer bytes, final boolean sync, final IOCallback callback) { if (callback == null) { throw new NullPointerException("callback parameter need to be set"); } try { internalWrite(bytes, sync, callback, true); } catch (Exception e) { callback.onError(ActiveMQExceptionType.GENERIC_EXCEPTION.getCode(), e.getMessage()); } }
private void setErrorCondition(IOCallback otherCallback, JournalTransaction jt, Throwable t) { TransactionCallback callback = null; if (jt != null) { callback = jt.getCurrentCallback(); if (callback != null && callback.getErrorMessage() != null) { callback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), t.getMessage()); } } if (otherCallback != null && otherCallback != callback) { otherCallback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), t.getMessage()); } }
private void setErrorCondition(IOCallback otherCallback, JournalTransaction jt, Throwable t) { TransactionCallback callback = null; if (jt != null) { callback = jt.getCurrentCallback(); if (callback != null && callback.getErrorMessage() != null) { callback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), t.getMessage()); } } if (otherCallback != null && otherCallback != callback) { otherCallback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), t.getMessage()); } }
private void checkIsOpen(IOCallback callback) { if (!isOpen()) { callback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), "File not opened"); } }
private void checkIsOpen(IOCallback callback) { if (!isOpen()) { callback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), "File not opened"); } }
public void complete(boolean success) { if (ioCompletion != null) { if (success) { ioCompletion.done(); } else { ioCompletion.onError(ActiveMQExceptionType.IO_ERROR.getCode(), "JDBC Transaction failed."); } } }
@Override public void run() { try { libaioFile.write(position, bytes, buffer, this); } catch (IOException e) { callback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), e.getMessage()); onIOError(e, "Failed to write to file", sequentialFile); } }
@Override public void run() { try { libaioFile.write(position, bytes, buffer, this); } catch (IOException e) { callback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), e.getMessage()); onIOError(e, "Failed to write to file", sequentialFile); } }
@Override public void sync() throws IOException { final SimpleWaitIOCallback callback = new SimpleWaitIOCallback(); executor.execute(callback::done); try { callback.waitCompletion(); } catch (Exception e) { callback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), "Error during JDBC file sync."); fileFactory.onIOError(e, "Error during JDBC file sync.", this); } }
@Override public synchronized int read(ByteBuffer bytes, final IOCallback callback) throws SQLException { synchronized (writeLock) { try { int read = dbDriver.readFromFile(this, bytes); readPosition += read; if (callback != null) callback.done(); return read; } catch (SQLException e) { if (callback != null) callback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), e.getMessage()); fileFactory.onIOError(e, "Error reading from JDBC file.", this); } return 0; } }
@Override public void encodeRest(final ActiveMQBuffer buffer) { buffer.writeInt(exception.getType().getCode()); buffer.writeNullableString(exception.getMessage()); }
@Override public void encodeRest(final ActiveMQBuffer buffer) { buffer.writeInt(exception.getType().getCode()); buffer.writeNullableString(exception.getMessage()); }
@Override public void encodeRest(final ActiveMQBuffer buffer) { buffer.writeInt(exception.getType().getCode()); buffer.writeNullableString(exception.getMessage()); }
@Override public void encodeRest(final ActiveMQBuffer buffer) { buffer.writeInt(exception.getType().getCode()); buffer.writeNullableString(exception.getMessage()); }
@Override public void encodeRest(final ActiveMQBuffer buffer) { buffer.writeInt(exception.getType().getCode()); buffer.writeNullableString(exception.getMessage()); }
@Override public void run() { if (sendError) { callback.onError(ActiveMQExceptionType.UNSUPPORTED_PACKET.getCode(), "Fake aio error"); } else { try { file.data.put(bytes); if (callback != null) { callback.done(); } } catch (Throwable e) { e.printStackTrace(); callback.onError(ActiveMQExceptionType.GENERIC_EXCEPTION.getCode(), e.getMessage()); } } }
@Override public void encodeRest(final ActiveMQBuffer buffer) { buffer.writeInt(exception.getType().getCode()); buffer.writeNullableString(exception.getMessage()); }
@Override public void writeDirect(ByteBuffer bytes, boolean sync, IOCallback callback) { if (callback == null) { SimpleWaitIOCallback waitIOCallback = new SimpleWaitIOCallback(); try { scheduleWrite(bytes, waitIOCallback); waitIOCallback.waitCompletion(); } catch (Exception e) { waitIOCallback.onError(ActiveMQExceptionType.IO_ERROR.getCode(), "Error writing to JDBC file."); fileFactory.onIOError(e, "Failed to write to file.", this); } } else { scheduleWrite(bytes, callback); } }