de.elomagic.vaadin.addon.speechrecognition.SpeechRecognitionEvent.java Source code

Java tutorial

Introduction

Here is the source code for de.elomagic.vaadin.addon.speechrecognition.SpeechRecognitionEvent.java

Source

/*
 * Copyright 2014 Carsten Rambow.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package de.elomagic.vaadin.addon.speechrecognition;

import org.json.JSONObject;

import com.vaadin.ui.Component;

/**
 * Common recognition event class.
 */
public class SpeechRecognitionEvent extends Component.Event {

    private final Type eventType;
    private final SpeechRecognitionEventData data;
    private final JSONObject object;

    /**
     * Types of events.
     */
    public enum Type {
        AudioStart, SoundStart, SpeechStart, SpeechEnd, SoundEnd, AudioEnd, Result, NoMatch, Error, Start, End
    }

    public SpeechRecognitionEvent(final Component source, final Type type, final SpeechRecognitionEventData data,
            final JSONObject object) {
        super(source);
        this.eventType = type;
        this.data = data;
        this.object = object;
    }

    /**
     * Returns type of event.
     *
     * @return
     */
    public Type getType() {
        return eventType;
    }

    /**
     * Returns the original event object from client site as a JSON object.
     *
     * @return
     */
    public JSONObject getJsonObject() {
        return object;
    }

    /**
     * Returns event data object.
     *
     * @return
     */
    public SpeechRecognitionEventData getData() {
        return data;
    }

    @Override
    public String toString() {
        String s = "SpeechSynthesisEvent(\n";
        s += "    Source=" + (getSource() == null ? "[null]" : getSource().toString()) + ";\n";
        s += "    Event=" + object.toString() + ";\n";
        s += ")";
        return s;
    }

}