try { if (!wavelet.checkAccessPermission(ParticipantId.of(delta.getAuthor()))) { resultListener.onFailure(FederationErrors.badRequest( delta.getAuthor() + " is not a participant of " + waveletName)); return; resultListener.onFailure(FederationErrors.badRequest( "Invalid author address: " + e.getMessage())); return; } catch (WaveServerException e) { resultListener.onFailure(FederationErrors.internalServerError(e.getMessage())); return; transformedDelta.getApplicationTimestamp()); } catch (OperationException e) { resultListener.onFailure(FederationErrors.badRequest(e.getMessage())); } catch (InvalidProtocolBufferException e) { resultListener.onFailure(FederationErrors.badRequest(e.getMessage())); } catch (InvalidHashException e) { resultListener.onFailure(FederationErrors.badRequest(e.getMessage())); } catch (PersistenceException e) { resultListener.onFailure(FederationErrors.internalServerError(e.getMessage())); } catch (WaveletStateException e) { resultListener.onFailure(FederationErrors.internalServerError(e.getMessage()));
if (!isLocalWavelet(waveletName)) { LOG.warning("Remote tried to submit to non-local wavelet " + waveletName); listener.onFailure(FederationErrors.badRequest("Non-local wavelet update")); return; } catch (InvalidProtocolBufferException e) { LOG.warning("Submit request: Invalid delta protobuf. WaveletName: " + waveletName, e); listener.onFailure(FederationErrors.badRequest("Signed delta contains invalid delta")); return; listener.onFailure(FederationErrors.badRequest("Remote users may not create wavelets.")); return; LOG.warning("Submit request: Delta failed verification. WaveletName: " + waveletName + " delta: " + signedDelta, e); listener.onFailure(FederationErrors.badRequest("Remote verification failed")); } catch (UnknownSignerException e) { LOG.warning("Submit request: unknown signer. WaveletName: " + waveletName + "delta: " + signedDelta, e); listener.onFailure(FederationErrors.internalServerError("Unknown signer"));
@Override public void submitRequest(WaveletName waveletName, ProtocolSignedDelta delta, SubmitResultListener listener) { listener.onFailure(FederationErrors.badRequest("Federation is not enabled!")); }