Search in sources :

Example 1 with FunctionDone

use of org.eclipse.titan.log.viewer.views.msc.ui.core.FunctionDone in project titan.EclipsePlug-ins by eclipse.

the class MSCModel method extractNodes.

/**
 * Extracts the nodes from the provided event object.
 *
 * @param ievent the event to extract the data from.
 * @param occurrence the number at which time this event happened in its order.
 *
 * @return the resulting list of nodes.
 */
private MSCNode[] extractNodes(final IEventObject ievent, final int occurrence) {
    if (!(ievent instanceof EventObject)) {
        return new MSCNode[] {};
    }
    EventObject event = (EventObject) ievent;
    String ref = event.getReference();
    String target = event.getTarget();
    String name = event.getName();
    String time = event.getTime();
    String type = event.getEventType();
    String sourcePort = event.getPort();
    String targetPort = event.getTargetPort();
    switch(event.getType()) {
        // TC start
        case TC_START:
            return testCaseStart(name, time, this.frame.lifeLinesCount(), occurrence);
        // TC end
        case TC_END:
            return testCaseEnd(name, time, this.frame.lifeLinesCount(), occurrence);
        // Creation of System Component
        case SYSTEM_CREATE:
            ref = Constants.SUT_REFERENCE;
            return createComponent(ref, time, this.lifelines.get(ref), occurrence);
        // Creation of Host Controller (HC)
        case HC_CREATE:
            ref = Constants.HC_REFERENCE;
            return createComponent(ref, time, this.lifelines.get(ref), occurrence);
        // Creation of Main Test Component (MTC)
        case MTC_CREATE:
            {
                ref = Constants.MTC_REFERENCE;
                Lifeline lifeLine = this.lifelines.get(ref);
                return createComponent(ref, time, lifeLine, occurrence);
            }
        // Creation of Parallel Test Component (PTC)
        case PTC_CREATE:
            return createComponent(ref, time, this.lifelines.get(ref), occurrence);
        // Termination of System Component
        case SYSTEM_TERMINATE:
            ref = Constants.SUT_REFERENCE;
            return terminateComponent(ref, time, occurrence);
        // Termination of Host Controller (HC)
        case HC_TERMINATE:
            ref = Constants.HC_REFERENCE;
            return terminateComponent(ref, time, occurrence);
        // Termination of Main Test Component (MTC)
        case MTC_TERMINATE:
            ref = Constants.MTC_REFERENCE;
            return terminateComponent(ref, time, occurrence);
        // Termination of Parallel Test Component (PTC)
        case PTC_TERMINATE:
            return terminateComponent(ref, time, occurrence);
        // Messages
        case SEND:
            return addSignal(new SendSignal(), ref, target, name, time, occurrence);
        case RECEIVE:
            return addSignal(new ReceiveSignal(), ref, target, name, time, occurrence);
        // Enqueued messages
        case ENQUEUED:
            return addEnqueued(ref, target, name, time, occurrence);
        // Silent events
        case SILENT_EVENT:
            LogRecord logrecord = null;
            try {
                logrecord = ValueReader.getInstance().readLogRecordFromLogFile(this.logFilePath, event);
            } catch (final IOException valueException) {
                return addSilentEvent(ref, "", type, time, occurrence);
            } catch (final ParseException e) {
                return addSilentEvent(ref, "", type, time, occurrence);
            }
            String messageText = getMessageTextFromRecord(logrecord);
            return addSilentEvent(ref, messageText, type, time, occurrence);
        // Functions
        case FUNCTION:
            return addFunctionNode(new Function(), ref, target, name, time, occurrence);
        // Function done
        case PTC_DONE:
            return addFunctionNode(new FunctionDone(), ref, target, name, time, occurrence);
        // Setverdict
        case SETVERDICT:
        case SETVERDICT_INCONC:
        case SETVERDICT_NONE:
        case SETVERDICT_PASS:
            return addSetVerdict(ref, name, time, occurrence);
        // Port mappings
        case MAPPING_PORT:
            return addPortEventNode(new PortMapping(sourcePort, targetPort), ref, target, time, occurrence);
        // Port unmappings
        case UNMAPPING_PORT:
            return addPortEventNode(new PortUnmapping(sourcePort, targetPort), ref, target, time, occurrence);
        // Port connections
        case CONNECTING_PORT:
            return addPortEventNode(new PortConnection(sourcePort, targetPort), ref, target, time, occurrence);
        // Port disconnections
        case DISCONNECTING_PORT:
            return addPortEventNode(new PortDisconnection(sourcePort, targetPort), ref, target, time, occurrence);
        default:
            return new MSCNode[] {};
    }
}
Also used : Lifeline(org.eclipse.titan.log.viewer.views.msc.ui.core.Lifeline) MSCNode(org.eclipse.titan.log.viewer.views.msc.ui.core.MSCNode) PortUnmapping(org.eclipse.titan.log.viewer.views.msc.ui.core.PortUnmapping) SendSignal(org.eclipse.titan.log.viewer.views.msc.ui.core.SendSignal) IOException(java.io.IOException) ReceiveSignal(org.eclipse.titan.log.viewer.views.msc.ui.core.ReceiveSignal) PortConnection(org.eclipse.titan.log.viewer.views.msc.ui.core.PortConnection) Function(org.eclipse.titan.log.viewer.views.msc.ui.core.Function) LogRecord(org.eclipse.titan.log.viewer.parsers.data.LogRecord) FunctionDone(org.eclipse.titan.log.viewer.views.msc.ui.core.FunctionDone) ParseException(java.text.ParseException) PortMapping(org.eclipse.titan.log.viewer.views.msc.ui.core.PortMapping) PortDisconnection(org.eclipse.titan.log.viewer.views.msc.ui.core.PortDisconnection)

Aggregations

IOException (java.io.IOException)1 ParseException (java.text.ParseException)1 LogRecord (org.eclipse.titan.log.viewer.parsers.data.LogRecord)1 Function (org.eclipse.titan.log.viewer.views.msc.ui.core.Function)1 FunctionDone (org.eclipse.titan.log.viewer.views.msc.ui.core.FunctionDone)1 Lifeline (org.eclipse.titan.log.viewer.views.msc.ui.core.Lifeline)1 MSCNode (org.eclipse.titan.log.viewer.views.msc.ui.core.MSCNode)1 PortConnection (org.eclipse.titan.log.viewer.views.msc.ui.core.PortConnection)1 PortDisconnection (org.eclipse.titan.log.viewer.views.msc.ui.core.PortDisconnection)1 PortMapping (org.eclipse.titan.log.viewer.views.msc.ui.core.PortMapping)1 PortUnmapping (org.eclipse.titan.log.viewer.views.msc.ui.core.PortUnmapping)1 ReceiveSignal (org.eclipse.titan.log.viewer.views.msc.ui.core.ReceiveSignal)1 SendSignal (org.eclipse.titan.log.viewer.views.msc.ui.core.SendSignal)1