downgoon / passport

a generic passport restful api for web sites and mobile apps
0 stars 0 forks source link

passport event bus #29

Open downgoon opened 7 years ago

downgoon commented 7 years ago

async event publishing and listening

    <bean id="accountEventPublisher" class="io.downgoon.jresty.utils.concurrent.EventFramework" init-method="init" scope="singleton">
        <property name="corePoolSize" value="5" />
        <property name="maximumPoolSize" value="10" />
        <property name="keepAliveSecond" value="2" />
        <property name="workQueueBufferSize" value="1000" />
        <property name="eventListener">
            <bean class="io.downgoon.jresty.utils.concurrent.ListEventListener">
                <constructor-arg>
                    <list>
                        <ref local="activateEventListener"/>
                        <ref local="registerEventListener"/>
                        <ref local="loginEventListener"/>
                        <ref local="updateEventListener"/>
                    </list>
                </constructor-arg>
            </bean>
        </property>
    </bean>

    <bean id="activateEventListener" class="io.downgoon.passport.web.action.business.ActivateEventListener" />

    <bean id="registerEventListener" class="io.downgoon.passport.web.action.business.RegisterEventListener">
        <property name="partnerManager" ref="partnerManager" />
        <property name="billboard" ref="billboard" />
    </bean>

    <bean id="loginEventListener" class="io.downgoon.passport.web.action.business.LoginEventListener">
        <property name="partnerManager" ref="partnerManager" />
        <property name="sinaFriendshipSpider" ref="sinaFriendshipSpider" />
        <property name="renrenFriendshipSpider" ref="renrenFriendshipSpider" />
    </bean>

    <bean id="updateEventListener" class="io.downgoon.passport.web.action.business.UpdateEventListener">
        <property name="userManager" ref="userManager" />
        <property name="accessManager" ref="accessManager" />
        <property name="partnerManager" ref="partnerManager" />
    </bean>
downgoon commented 7 years ago

add a new listener and push the event to kafka

io.downgoon.passport.web.action.business.KafkaEventListener