<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ChenGen

    一切歸零,重新開始
    隨筆 - 13, 文章 - 10, 評論 - 21, 引用 - 0
    數(shù)據(jù)加載中……

    使用Sandstorm

    /**
    ?*?
    ?
    */

    package ?p2hp.datapool.main;

    import ?p2hp.datapool.handler.ReceiveStageHandler;
    import ?p2hp.datapool.message.HelloWorldMsg;
    import ?winseda.sandStorm.api.EventHandlerIF;
    import ?winseda.sandStorm.api.ManagerIF;
    import ?winseda.sandStorm.api.SinkIF;
    import ?winseda.sandStorm.api.StageIF;
    import ?winseda.sandStorm.main.Sandstorm;

    /**
    ?*?
    @author ?chengen
    ?
    */

    public ? class ?SandStormTest? {

    ????
    /**
    ?????*?
    @param ?args
    ?????
    */

    ????
    public ? static ? void ?main(String[]?args)? {

    ????????
    try ? {
    ????????????
    // ?create?an?instance?of?SandStorm
    ????????????Sandstorm?ss? = ? new ?Sandstorm();
    ????????????
    // ?get?the?managerIF?through?which?we?create?stages
    ????????????ManagerIF?mgr? = ?ss.getManager();
    ????????????
    // ?create?an?instance?of?a?EventHandlerIF?which?can?then?receive?and
    ????????????
    // ?process?messages
    ????????????EventHandlerIF?handler1? = ? new ?ReceiveStageHandler();
    ????????????
    // ?create?a?stage?use?ManagerIF
    ????????????mgr.createStage( " receivestage " ,?handler1,? null );
    ????????????
    // ?get?the?StageIF?of?the?stage?we?created?just?now?whose?name?is
    ????????????
    // ?'receiverstage'
    ????????????StageIF?receiveStage? = ?mgr.getStage( " receivestage " );
    ????????????
    // ?get?the?SinkIF?of?the?stage?we?created?just?now?and?then?we?use
    ????????????
    // ?this?SinkIF?to?send?messages?to?the?stage
    ????????????SinkIF?nextStageSink? = ?receiveStage.getSink();
    ????????????
    // ?send?1000?messages?to?the?stage?'receivestage'
    ???????????? for ?( int ?i? = ? 0 ;?i? < ? 1000 ;?i ++ )? {
    ????????????????
    // ?create?an?instance?of?the?message
    ????????????????HelloWorldMsg?msg? = ? new ?HelloWorldMsg( " message " ? + ?i);
    ????????????????System.out.println(
    " #send?message# " ? + ?msg);
    ????????????????Thread.sleep(
    500 );
    ????????????????
    // ?send?the?message?through?the?SinkIF
    ????????????????nextStageSink.enqueue(msg);
    ????????????}


    ????????}
    ? catch ?(Exception?e)? {
    ????????????
    // ?TODO:?handle?exception
    ????????????e.printStackTrace();
    ????????}

    ????}

    }


    /**
    ?*?
    ?
    */

    package ?p2hp.datapool.handler;

    import ?p2hp.datapool.message.HelloWorldMsg;
    import ?winseda.sandStorm.api.ConfigDataIF;
    import ?winseda.sandStorm.api.EventHandlerException;
    import ?winseda.sandStorm.api.EventHandlerIF;
    import ?winseda.sandStorm.api.QueueElementIF;
    import ?winseda.sandStorm.api.SinkIF;
    import ?winseda.sandStorm.api.StagesInitializedSignal;

    /**
    ?*?
    @author ?chengen
    ?
    */

    public ? class ?ReceiveStageHandler? implements ?EventHandlerIF? {

    ????
    private ?ConfigDataIF?config;

    ????
    /*
    ?????*?(non-Javadoc)
    ?????*?
    ?????*?@see?winseda.sandStorm.api.EventHandlerIF#destroy()
    ?????
    */

    ????
    public ? void ?destroy()? throws ?Exception? {
    ????????
    // ?TODO?Auto-generated?method?stub

    ????}


    ????
    /*
    ?????*?(non-Javadoc)
    ?????*?
    ?????*?@see?winseda.sandStorm.api.EventHandlerIF#handleEvent(winseda.sandStorm.api.QueueElementIF)
    ?????
    */

    ????
    public ? void ?handleEvent(QueueElementIF?elem)? throws ?EventHandlerException? {
    ????????
    // ?TODO?Auto-generated?method?stub
    ???????? if ?(elem? instanceof ?HelloWorldMsg)? {
    ????????????System.out.println(
    this .getClass()? + ? " ::get?message:: " ? + ?elem);
    ????????}

    ????}


    ????
    /*
    ?????*?(non-Javadoc)
    ?????*?
    ?????*?@see?winseda.sandStorm.api.EventHandlerIF#handleEvents(winseda.sandStorm.api.QueueElementIF[])
    ?????
    */

    ????
    public ? void ?handleEvents(QueueElementIF[]?elemarr)
    ????????????
    throws ?EventHandlerException? {
    ????????
    // ?TODO?Auto-generated?method?stub
    ???????? for ?( int ?i? = ? 0 ;?i? < ?elemarr.length;?i ++ )? {
    ????????????handleEvent(elemarr[i]);
    ????????}

    ????}


    ????
    /*
    ?????*?(non-Javadoc)
    ?????*?
    ?????*?@see?winseda.sandStorm.api.EventHandlerIF#init(winseda.sandStorm.api.ConfigDataIF)
    ?????
    */

    ????
    public ? void ?init(ConfigDataIF?config)? throws ?Exception? {
    ????????
    // ?TODO?Auto-generated?method?stub
    ???????? this .config? = ?config;
    ????????System.out.println(
    " ######receive?stage?initialized###### " );
    ????}


    }

    posted on 2006-10-12 11:28 ChenGen 閱讀(448) 評論(0)  編輯  收藏 所屬分類: SEDA


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
    相關(guān)文章:
     
    主站蜘蛛池模板: 亚洲国产高清在线| 亚洲精品456人成在线| 最近免费最新高清中文字幕韩国 | 在线观看肉片AV网站免费| 7777久久亚洲中文字幕蜜桃| 午夜小视频免费观看| 二个人看的www免费视频| 亚洲日本香蕉视频| 免费在线观看一级毛片| 99久久国产免费-99久久国产免费| 亚洲色大成网站WWW国产| 九月丁香婷婷亚洲综合色| 一个人免费高清在线观看| 韩国免费a级作爱片无码| 亚洲影视一区二区| 久久精品亚洲男人的天堂 | 国产亚洲人成网站观看| 国产精品视频永久免费播放| 国产精品免费久久久久影院| youjizz亚洲| 亚洲热线99精品视频| 午夜小视频免费观看| 精品一区二区三区免费毛片爱| 青青草97国产精品免费观看| 亚洲女人初试黑人巨高清| 亚洲中文字幕无码一区| 精品国产麻豆免费网站| 中文字幕免费高清视频| 久久最新免费视频| 无码色偷偷亚洲国内自拍| 亚洲AV无码一区二区三区在线| 亚洲色中文字幕无码AV| 全部免费毛片在线| 成人无码区免费视频观看 | 国产又黄又爽又猛的免费视频播放| 国产拍拍拍无码视频免费| 日本高清免费中文在线看| 亚洲av无码兔费综合| 国产色在线|亚洲| 亚洲欧洲精品视频在线观看| 亚洲精品无码乱码成人|