public void sendEvent(Event event) { try { connect(); EventWriter ew = new EventWriter(connection, settings); ew.createSendEvent(event); ew.send(); } catch (Exception e) { e.printStackTrace(); } }
void closeWriter() throws IOException { synchronized (lock) { if (writer != null) { writer.close(); } writer = null; } }
void flush() throws IOException { synchronized (lock) { if (numUnflushedCompletionEvents != 0) { // skipped timer cancel. writer.flush(); numUnflushedCompletionEvents = 0; resetFlushTimer(); } } }
void writeEvent(HistoryEvent event) throws IOException { synchronized (lock) { if (writer != null) { writer.write(event); processEventForFlush(event); maybeFlush(event); } } }
@POST @Consumes(MediaType.APPLICATION_JSON) public Response post(List<Event> events) throws IOException { Set<String> badEvents = Sets.newHashSet(); for (Event event : events) { if (acceptedEventType(event.getType())) { for (EventWriter writer : writers) { writer.write(event); } increment(event.getType()); } else { badEvents.add(event.getType()); } } if (!badEvents.isEmpty()) { String errorMessage = "Invalid event type(s): " + Joiner.on(", ").join(badEvents); return Response.status(Status.BAD_REQUEST).entity(errorMessage).build(); } return Response.status(Response.Status.ACCEPTED).build(); }
/** @param event */ public void sendEventToListeners(final Event event) { m_eventWriter.writeEvent(event); broadcastNow(event); }
/* * makes array of bytes with History events */ private byte[] getEvents() throws Exception { ByteArrayOutputStream output = new ByteArrayOutputStream(); FSDataOutputStream fsOutput = new FSDataOutputStream(output, new FileSystem.Statistics("scheme")); EventWriter writer = new EventWriter(fsOutput, EventWriter.WriteMode.JSON); writer.write(getJobPriorityChangedEvent()); writer.write(getJobStatusChangedEvent()); writer.write(getTaskUpdatedEvent()); writer.write(getReduceAttemptKilledEvent()); writer.write(getJobKilledEvent()); writer.write(getSetupAttemptStartedEvent()); writer.write(getTaskAttemptFinishedEvent()); writer.write(getSetupAttemptFieledEvent()); writer.write(getSetupAttemptKilledEvent()); writer.write(getCleanupAttemptStartedEvent()); writer.write(getCleanupAttemptFinishedEvent()); writer.write(getCleanupAttemptFiledEvent()); writer.write(getCleanupAttemptKilledEvent()); writer.flush(); writer.close(); return output.toByteArray(); }