components.xml 3.83 KB
<plexus>
	<components>
		<component>
			<role>com.dianping.cat.configuration.ClientConfigManager</role>
			<implementation>com.dianping.cat.configuration.DefaultClientConfigManager</implementation>
		</component>
		<component>
			<role>com.dianping.cat.message.internal.MessageIdFactory</role>
			<implementation>com.dianping.cat.message.internal.MessageIdFactory</implementation>
		</component>
		<component>
			<role>com.dianping.cat.message.spi.MessageManager</role>
			<implementation>com.dianping.cat.message.internal.DefaultMessageManager</implementation>
			<requirements>
				<requirement>
					<role>com.dianping.cat.configuration.ClientConfigManager</role>
				</requirement>
				<requirement>
					<role>com.dianping.cat.message.io.TransportManager</role>
				</requirement>
				<requirement>
					<role>com.dianping.cat.message.internal.MessageIdFactory</role>
				</requirement>
			</requirements>
		</component>
		<component>
			<role>com.dianping.cat.message.MessageProducer</role>
			<implementation>com.dianping.cat.message.internal.DefaultMessageProducer</implementation>
			<requirements>
				<requirement>
					<role>com.dianping.cat.message.spi.MessageManager</role>
				</requirement>
				<requirement>
					<role>com.dianping.cat.message.internal.MessageIdFactory</role>
				</requirement>
			</requirements>
		</component>
		<component>
			<role>com.dianping.cat.message.io.TcpSocketSender</role>
			<implementation>com.dianping.cat.message.io.TcpSocketSender</implementation>
			<requirements>
				<requirement>
					<role>com.dianping.cat.configuration.ClientConfigManager</role>
				</requirement>
				<requirement>
					<role>com.dianping.cat.message.internal.MessageIdFactory</role>
				</requirement>
				<requirement>
					<role>com.dianping.cat.message.spi.MessageStatistics</role>
					<field-name>m_statistics</field-name>
				</requirement>
				<requirement>
					<role>com.dianping.cat.message.spi.MessageCodec</role>
					<role-hint>plain-text</role-hint>
					<field-name>m_codec</field-name>
				</requirement>
			</requirements>
		</component>
		<component>
			<role>com.dianping.cat.message.io.TransportManager</role>
			<implementation>com.dianping.cat.message.io.DefaultTransportManager</implementation>
			<requirements>
				<requirement>
					<role>com.dianping.cat.configuration.ClientConfigManager</role>
				</requirement>
				<requirement>
					<role>com.dianping.cat.message.io.TcpSocketSender</role>
				</requirement>
			</requirements>
		</component>
		<component>
			<role>com.dianping.cat.message.spi.MessageStatistics</role>
			<implementation>com.dianping.cat.message.spi.internal.DefaultMessageStatistics</implementation>
		</component>
		<component>
			<role>com.dianping.cat.status.StatusUpdateTask</role>
			<implementation>com.dianping.cat.status.StatusUpdateTask</implementation>
			<requirements>
				<requirement>
					<role>com.dianping.cat.message.spi.MessageStatistics</role>
				</requirement>
				<requirement>
					<role>com.dianping.cat.configuration.ClientConfigManager</role>
				</requirement>
			</requirements>
		</component>
		<component>
			<role>org.unidal.initialization.Module</role>
			<role-hint>cat-client</role-hint>
			<implementation>com.dianping.cat.CatClientModule</implementation>
		</component>
		<component>
			<role>com.dianping.cat.message.spi.codec.BufferWriter</role>
			<role-hint>escape</role-hint>
			<implementation>com.dianping.cat.message.spi.codec.EscapingBufferWriter</implementation>
		</component>
		<component>
			<role>com.dianping.cat.message.spi.MessageCodec</role>
			<role-hint>plain-text</role-hint>
			<implementation>com.dianping.cat.message.spi.codec.PlainTextMessageCodec</implementation>
			<requirements>
				<requirement>
					<role>com.dianping.cat.message.spi.codec.BufferWriter</role>
					<role-hint>escape</role-hint>
				</requirement>
			</requirements>
		</component>
	</components>
</plexus>