use of org.yamcs.protobuf.Yamcs.Event in project yamcs-studio by yamcs.
the class AddManualEventHandler method execute.
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
IWorkbenchPart part = HandlerUtil.getActivePartChecked(event);
EventLogView view = (EventLogView) part;
String action = event.getParameter(EVENT_ADD_ACTION);
if (action.equals(EVENT_ADD)) {
AddManualEventDialog addManualEventDialog = new AddManualEventDialog(part.getSite().getShell());
int result = addManualEventDialog.open();
} else {
// action.equals(EVENT_INSERT)
ISelection sel = HandlerUtil.getActiveWorkbenchWindow(event).getActivePage().getSelection();
// get selected event and open a manual event dialog using the selected generation time.
if (sel != null && sel instanceof IStructuredSelection) {
IStructuredSelection selection = (IStructuredSelection) sel;
Iterator<?> it = selection.iterator();
Event rec = (Event) it.next();
long generationTime = rec.getGenerationTime();
AddManualEventDialog addManualEventDialog = new AddManualEventDialog(part.getSite().getShell(), generationTime);
int result = addManualEventDialog.open();
}
}
return null;
}
use of org.yamcs.protobuf.Yamcs.Event in project yamcs-studio by yamcs.
the class ExportEventsHandler method execute.
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
Shell shell = HandlerUtil.getActiveShell(event);
IWorkbenchPart part = HandlerUtil.getActivePartChecked(event);
EventLogView eventLogView = (EventLogView) part;
// Ask for file to export
FileDialog dialog = new FileDialog(Display.getCurrent().getActiveShell(), SWT.SAVE);
dialog.setFilterExtensions(new String[] { "*.csv" });
String targetFile = dialog.open();
if (targetFile == null) {
// cancelled
return null;
}
// Write CSV
try {
List<Event> events = eventLogView.getEventLog().getEvents();
writeEvents(new File(targetFile), events);
MessageDialog.openInformation(shell, "Export Events", "Events exported successfully.");
} catch (Exception e) {
MessageDialog.openError(shell, "Export Events", "Unable to perform events export.\nDetails:" + e.getMessage());
}
return null;
}
use of org.yamcs.protobuf.Yamcs.Event in project yamcs-studio by yamcs.
the class EventCatalogue method createEvent.
public CompletableFuture<byte[]> createEvent(String source, int sequenceNumber, String message, long generationTime, long receptionTime, EventSeverity severity) {
String instance = ManagementCatalogue.getCurrentYamcsInstance();
String resource = "/archive/" + instance + "/events/";
Event event = Event.newBuilder().setSource(source).setSeqNumber(sequenceNumber).setMessage(message).setGenerationTime(generationTime).setReceptionTime(receptionTime).setSeverity(severity).build();
YamcsClient yamcsClient = YamcsPlugin.getYamcsClient();
return yamcsClient.post(resource, event);
}
use of org.yamcs.protobuf.Yamcs.Event in project yamcs-studio by yamcs.
the class CopyEventDetailsHandler method execute.
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
ISelection sel = HandlerUtil.getActiveWorkbenchWindow(event).getActivePage().getSelection();
if (sel != null && sel instanceof IStructuredSelection) {
IStructuredSelection selection = (IStructuredSelection) sel;
String property = event.getParameter(EventLog.CMDPARAM_EVENT_PROPERTY);
StringBuilder text = new StringBuilder();
Iterator<?> it = selection.iterator();
while (it.hasNext()) {
Event rec = (Event) it.next();
switch(property) {
case PARAM_MESSAGE:
text.append(rec.getMessage());
break;
case PARAM_SOURCE:
text.append(rec.getSource());
break;
case PARAM_TYPE:
text.append(rec.getSource());
break;
case PARAM_GENTIME:
text.append(rec.getGenerationTimeUTC());
break;
case PARAM_RECTIME:
text.append(rec.getReceptionTimeUTC());
break;
case PARAM_SEQNO:
text.append(rec.getSeqNumber());
break;
case PARAM_SEVERITY:
text.append(rec.getSeverity());
break;
default:
throw new IllegalStateException("Unexpected property: " + property);
}
if (it.hasNext()) {
text.append("\n");
}
}
Display display = Display.getCurrent();
Clipboard clipboard = new Clipboard(display);
Transfer[] transfers = new Transfer[] { TextTransfer.getInstance() };
clipboard.setContents(new Object[] { text.toString() }, transfers);
clipboard.dispose();
}
return null;
}
use of org.yamcs.protobuf.Yamcs.Event in project yamcs-studio by yamcs.
the class CopyEventHandler method execute.
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
ISelection sel = HandlerUtil.getActiveWorkbenchWindow(event).getActivePage().getSelection();
if (sel != null && sel instanceof IStructuredSelection) {
IStructuredSelection selection = (IStructuredSelection) sel;
StringBuilder text = new StringBuilder("Severity\tMessage\tType\tSource\tGeneration\tReception\tSequence Number\n");
Iterator<?> it = selection.iterator();
while (it.hasNext()) {
Event rec = (Event) it.next();
text.append(rec.getSeverity()).append("\t").append(rec.getMessage()).append("\t").append(rec.getType()).append("\t").append(rec.getSource()).append("\t").append(rec.getGenerationTimeUTC()).append("\t").append(rec.getReceptionTimeUTC()).append("\t").append(rec.getSeqNumber()).append("\n");
}
Display display = Display.getCurrent();
Clipboard clipboard = new Clipboard(display);
Transfer[] transfers = new Transfer[] { TextTransfer.getInstance() };
clipboard.setContents(new Object[] { text.toString() }, transfers);
clipboard.dispose();
}
return null;
}
Aggregations