当前位置: 首页>>代码示例>>Java>>正文


Java InputAdapter类代码示例

本文整理汇总了Java中com.espertech.esper.adapter.InputAdapter的典型用法代码示例。如果您正苦于以下问题:Java InputAdapter类的具体用法?Java InputAdapter怎么用?Java InputAdapter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


InputAdapter类属于com.espertech.esper.adapter包,在下文中一共展示了InputAdapter类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: coordinate

import com.espertech.esper.adapter.InputAdapter; //导入依赖的package包/类
public void coordinate(InputAdapter inputAdapter) {
    if (inputAdapter == null) {
        throw new NullPointerException("AdapterSpec cannot be null");
    }

    if (!(inputAdapter instanceof CoordinatedAdapter)) {
        throw new IllegalArgumentException("Cannot coordinate a Adapter of type " + inputAdapter.getClass());
    }
    CoordinatedAdapter adapter = (CoordinatedAdapter) inputAdapter;
    if (eventsFromAdapters.values().contains(adapter) || emptyAdapters.contains(adapter)) {
        return;
    }
    adapter.disallowStateTransitions();
    adapter.setEPService(epService);
    adapter.setUsingEngineThread(usingEngineThread);
    adapter.setUsingExternalTimer(usingExternalTimer);
    adapter.setScheduleSlot(scheduleBucket.allocateSlot());
    addNewEvent(adapter);
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:20,代码来源:AdapterCoordinatorImpl.java

示例2: testEngineThread1000PerSec

import com.espertech.esper.adapter.InputAdapter; //导入依赖的package包/类
/**
 * Play a CSV file using an engine thread
 */
public void testEngineThread1000PerSec() throws Exception {
    epService = EPServiceProviderManager.getProvider("testExistingTypeNoOptions", makeConfig("TypeA"));
    epService.initialize();

    EPStatement stmt = epService.getEPAdministrator().createEPL("select symbol, price, volume from TypeA#length(100)");
    SupportUpdateListener listener = new SupportUpdateListener();
    stmt.addListener(listener);

    CSVInputAdapterSpec spec = new CSVInputAdapterSpec(new AdapterInputSource(CSV_FILENAME_ONELINE_TRADE), "TypeA");
    spec.setEventsPerSec(1000);
    spec.setUsingEngineThread(true);

    InputAdapter inputAdapter = new CSVInputAdapter(epService, spec);
    inputAdapter.start();
    Thread.sleep(1000);

    assertEquals(1, listener.getNewDataList().size());
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:22,代码来源:TestCSVAdapterUseCases.java

示例3: testEngineThread1PerSec

import com.espertech.esper.adapter.InputAdapter; //导入依赖的package包/类
/**
 * Play a CSV file using an engine thread.
 */
public void testEngineThread1PerSec() throws Exception {
    epService = EPServiceProviderManager.getProvider("testExistingTypeNoOptions", makeConfig("TypeA"));
    epService.initialize();

    EPStatement stmt = epService.getEPAdministrator().createEPL("select symbol, price, volume from TypeA#length(100)");
    SupportUpdateListener listener = new SupportUpdateListener();
    stmt.addListener(listener);

    CSVInputAdapterSpec spec = new CSVInputAdapterSpec(new AdapterInputSource(CSV_FILENAME_ONELINE_TRADE_MULTIPLE), "TypeA");
    spec.setEventsPerSec(1);
    spec.setUsingEngineThread(true);

    InputAdapter inputAdapter = new CSVInputAdapter(epService, spec);
    inputAdapter.start();

    Thread.sleep(1500);
    assertEquals(1, listener.getNewDataList().size());
    listener.reset();
    Thread.sleep(300);
    assertEquals(0, listener.getNewDataList().size());

    Thread.sleep(2000);
    assertTrue(listener.getNewDataList().size() >= 2);
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:28,代码来源:TestCSVAdapterUseCases.java

示例4: testAppThread

import com.espertech.esper.adapter.InputAdapter; //导入依赖的package包/类
/**
 * Play a CSV file using the application thread
 */
public void testAppThread() throws Exception {
    epService = EPServiceProviderManager.getProvider("testExistingTypeNoOptions", makeConfig("TypeA"));
    epService.initialize();

    EPStatement stmt = epService.getEPAdministrator().createEPL("select symbol, price, volume from TypeA#length(100)");
    SupportUpdateListener listener = new SupportUpdateListener();
    stmt.addListener(listener);

    CSVInputAdapterSpec spec = new CSVInputAdapterSpec(new AdapterInputSource(CSV_FILENAME_ONELINE_TRADE), "TypeA");
    spec.setEventsPerSec(1000);

    InputAdapter inputAdapter = new CSVInputAdapter(epService, spec);
    inputAdapter.start();

    assertEquals(1, listener.getNewDataList().size());
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:20,代码来源:TestCSVAdapterUseCases.java

示例5: testDynamicType

import com.espertech.esper.adapter.InputAdapter; //导入依赖的package包/类
/**
 * Play a CSV file using no existing (dynamic) event type (no timestamp)
 */
public void testDynamicType() {
    CSVInputAdapterSpec spec = new CSVInputAdapterSpec(new AdapterInputSource(CSV_FILENAME_ONELINE_TRADE), "TypeB");

    Configuration config = new Configuration();
    config.getEngineDefaults().getThreading().setInternalTimerEnabled(false);
    epService = EPServiceProviderManager.getDefaultProvider(config);
    epService.initialize();

    InputAdapter feed = new CSVInputAdapter(epService, spec);

    EPStatement stmt = epService.getEPAdministrator().createEPL("select symbol, price, volume from TypeB#length(100)");
    SupportUpdateListener listener = new SupportUpdateListener();
    stmt.addListener(listener);

    assertEquals(String.class, stmt.getEventType().getPropertyType("symbol"));
    assertEquals(String.class, stmt.getEventType().getPropertyType("price"));
    assertEquals(String.class, stmt.getEventType().getPropertyType("volume"));

    feed.start();
    assertEquals(1, listener.getNewDataList().size());
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:25,代码来源:TestCSVAdapterUseCases.java

示例6: trySource

import com.espertech.esper.adapter.InputAdapter; //导入依赖的package包/类
private void trySource(AdapterInputSource source) throws Exception {
    CSVInputAdapterSpec spec = new CSVInputAdapterSpec(source, "TypeC");

    epService = EPServiceProviderManager.getProvider("testPlayFromInputStream", makeConfig("TypeC"));
    epService.initialize();
    InputAdapter feed = new CSVInputAdapter(epService, spec);

    EPStatement stmt = epService.getEPAdministrator().createEPL("select * from TypeC#length(100)");
    SupportUpdateListener listener = new SupportUpdateListener();
    stmt.addListener(listener);

    feed.start();
    assertEquals(1, listener.getNewDataList().size());

    if (source.getAsReader() != null) {
        source.getAsReader().reset();
    } else {
        source.getAsStream().reset();
    }

    // test graph
    String graph = "create dataflow ReadCSV " +
            "FileSource -> mystream<TypeC> { hasTitleLine: true, classpathFile: true }" +
            "DefaultSupportCaptureOp(mystream) {}";
    epService.getEPAdministrator().createEPL(graph);

    DefaultSupportCaptureOp<Object> outputOp = new DefaultSupportCaptureOp<Object>();
    EPDataFlowInstantiationOptions options = new EPDataFlowInstantiationOptions();
    options.operatorProvider(new DefaultSupportGraphOpProvider(outputOp));
    options.parameterProvider(new DefaultSupportGraphParamProvider(Collections.<String, Object>singletonMap("adapterInputSource", source)));
    EPDataFlowInstance instance = epService.getEPRuntime().getDataFlowRuntime().instantiate("ReadCSV", options);
    instance.run();
    Object[] received = outputOp.getAndReset().get(0).toArray();
    assertEquals(1, received.length);
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:36,代码来源:TestCSVAdapterUseCases.java

示例7: makeMap

import com.espertech.esper.adapter.InputAdapter; //导入依赖的package包/类
private Map<String, Object> makeMap(String type, String prop1, int prop2) {
    Map<String, Object> props = new HashMap<String, Object>();
    props.put("prop1", prop1);
    props.put("prop2", prop2);
    props.put(InputAdapter.ESPERIO_MAP_EVENT_TYPE, type);
    return props;
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:8,代码来源:TestJMSSpringInputAdapter.java

示例8: unmarshal

import com.espertech.esper.adapter.InputAdapter; //导入依赖的package包/类
public EventBean unmarshal(EventAdapterService eventAdapterService,
                           Message message) throws EPException {
    try {
        if (message instanceof ObjectMessage) {
            ObjectMessage objmsg = (ObjectMessage) message;
            Serializable obj = objmsg.getObject();
            return eventAdapterService.adapterForBean(obj);
        } else if (message instanceof MapMessage) {
            Map<String, Object> properties = new HashMap<String, Object>();
            MapMessage mapMsg = (MapMessage) message;
            Enumeration en = mapMsg.getMapNames();
            while (en.hasMoreElements()) {
                String property = (String) en.nextElement();
                Object mapObject = mapMsg.getObject(property);
                properties.put(property, mapObject);
            }

            // Get event type property
            Object typeProperty = properties.get(InputAdapter.ESPERIO_MAP_EVENT_TYPE);
            if (typeProperty == null) {
                log.warn(".unmarshal Failed to unmarshal map message, expected type property not found: '" + InputAdapter.ESPERIO_MAP_EVENT_TYPE + "'");
                return null;
            }

            // Get event type
            String name = typeProperty.toString();
            EventType eventType = eventAdapterService.getExistsTypeByName(name);
            if (eventType == null) {
                log.warn(".unmarshal Failed to unmarshal map message, event type name '" + name + "' is not a known type");
                return null;
            }

            return eventAdapterService.adapterForTypedMap(properties, eventType);
        } else {
            String error = ".unmarshal Failed to unmarshal message of JMS type: " + message.getJMSType();
            log.error(error);
            throw new EPException(error);
        }
    } catch (JMSException ex) {
        throw new EPException("Error unmarshalling message", ex);
    }
}
 
开发者ID:espertechinc,项目名称:esper,代码行数:43,代码来源:JMSDefaultAnyMessageUnmarshaller.java

示例9: coordinate

import com.espertech.esper.adapter.InputAdapter; //导入依赖的package包/类
/**
 * Coordinate an InputAdapter.
 *
 * @param adapter - the InputAdapter to coordinate
 */
public void coordinate(InputAdapter adapter);
 
开发者ID:espertechinc,项目名称:esper,代码行数:7,代码来源:AdapterCoordinator.java


注:本文中的com.espertech.esper.adapter.InputAdapter类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。