Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
梦中观雨
cat
提交
74a20738
C
cat
项目概览
梦中观雨
/
cat
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
cat
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
74a20738
编写于
12月 29, 2011
作者:
F
Frankie Wu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
small change
上级
f5d66f17
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
43 addition
and
54 deletion
+43
-54
cat-core/src/main/java/com/dianping/cat/configuration/ComponentsConfigurator.java
...om/dianping/cat/configuration/ComponentsConfigurator.java
+6
-8
cat-core/src/main/java/com/dianping/cat/message/internal/DefaultTransaction.java
...com/dianping/cat/message/internal/DefaultTransaction.java
+11
-3
cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketReceiver.java
...n/java/com/dianping/cat/message/io/TcpSocketReceiver.java
+1
-0
cat-core/src/main/java/com/dianping/cat/message/spi/MessageConsumer.java
...in/java/com/dianping/cat/message/spi/MessageConsumer.java
+3
-2
cat-core/src/main/java/com/dianping/cat/message/spi/MessageConsumerRegistry.java
...com/dianping/cat/message/spi/MessageConsumerRegistry.java
+2
-4
cat-core/src/main/java/com/dianping/cat/message/spi/internal/DefaultMessageConsumerRegistry.java
.../message/spi/internal/DefaultMessageConsumerRegistry.java
+4
-17
cat-core/src/main/java/com/dianping/cat/message/spi/internal/DefaultMessageHandler.java
...nping/cat/message/spi/internal/DefaultMessageHandler.java
+10
-6
cat-core/src/main/resources/META-INF/plexus/components.xml
cat-core/src/main/resources/META-INF/plexus/components.xml
+6
-14
未找到文件。
cat-core/src/main/java/com/dianping/cat/configuration/ComponentsConfigurator.java
浏览文件 @
74a20738
...
...
@@ -4,8 +4,6 @@ import java.util.ArrayList;
import
java.util.List
;
import
com.dianping.cat.message.MessageProducer
;
import
com.dianping.cat.message.broker.DefaultMessageBroker
;
import
com.dianping.cat.message.broker.MessageBroker
;
import
com.dianping.cat.message.internal.DefaultMessageProducer
;
import
com.dianping.cat.message.io.InMemoryQueue
;
import
com.dianping.cat.message.io.InMemoryReceiver
;
...
...
@@ -13,9 +11,11 @@ import com.dianping.cat.message.io.InMemorySender;
import
com.dianping.cat.message.io.MessageReceiver
;
import
com.dianping.cat.message.io.MessageSender
;
import
com.dianping.cat.message.spi.MessageCodec
;
import
com.dianping.cat.message.spi.MessageConsumerRegistry
;
import
com.dianping.cat.message.spi.MessageHandler
;
import
com.dianping.cat.message.spi.codec.PlainTextMessageCodec
;
import
com.dianping.cat.message.spi.internal.MessageDispatcher
;
import
com.dianping.cat.message.spi.internal.DefaultMessageConsumerRegistry
;
import
com.dianping.cat.message.spi.internal.DefaultMessageHandler
;
import
com.site.lookup.configuration.AbstractResourceConfigurator
;
import
com.site.lookup.configuration.Component
;
...
...
@@ -32,15 +32,13 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator {
.
req
(
InMemoryQueue
.
class
));
all
.
add
(
C
(
MessageProducer
.
class
,
DefaultMessageProducer
.
class
));
all
.
add
(
C
(
MessageConsumerRegistry
.
class
,
DefaultMessageConsumerRegistry
.
class
));
all
.
add
(
C
(
MessageCodec
.
class
,
"plain-text"
,
PlainTextMessageCodec
.
class
));
// the following are not used right now
all
.
add
(
C
(
MessageHandler
.
class
,
MessageDispatcher
.
class
)
//
.
req
(
MessageReceiver
.
class
,
inMemory
));
all
.
add
(
C
(
MessageBroker
.
class
,
inMemory
,
DefaultMessageBroker
.
class
)
//
.
req
(
MessageSender
.
class
,
inMemory
)
//
all
.
add
(
C
(
MessageHandler
.
class
,
DefaultMessageHandler
.
class
)
//
.
req
(
MessageConsumerRegistry
.
class
)
//
.
req
(
MessageReceiver
.
class
,
inMemory
));
return
all
;
...
...
cat-core/src/main/java/com/dianping/cat/message/internal/DefaultTransaction.java
浏览文件 @
74a20738
...
...
@@ -29,10 +29,18 @@ public class DefaultTransaction extends AbstractMessage implements Transaction {
@Override
public
void
complete
()
{
m_duration
=
(
long
)
(
System
.
nanoTime
()
/
1
e6
)
-
getTimestamp
();
if
(
isCompleted
())
{
// complete() was called more than once
DefaultEvent
event
=
new
DefaultEvent
(
"CAT"
,
"BadInstrument"
);
setCompleted
(
true
);
MessageManager
.
INSTANCE
.
end
(
this
);
event
.
setStatus
(
"TransactionAlreadyCompleted"
);
event
.
complete
();
}
else
{
m_duration
=
(
long
)
(
System
.
nanoTime
()
/
1
e6
)
-
getTimestamp
();
setCompleted
(
true
);
MessageManager
.
INSTANCE
.
end
(
this
);
}
}
@Override
...
...
cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketReceiver.java
浏览文件 @
74a20738
...
...
@@ -112,6 +112,7 @@ public class TcpSocketReceiver implements MessageReceiver {
return
null
;
}
// TODO filter
return
buffer
.
readBytes
(
length
);
}
}
...
...
cat-core/src/main/java/com/dianping/cat/message/spi/MessageConsumer.java
浏览文件 @
74a20738
package
com.dianping.cat.message.spi
;
public
interface
MessageConsumer
{
public
String
getId
();
public
String
getConsumerId
();
public
String
getDomain
();
public
void
consume
(
MessageTree
tree
);
}
cat-core/src/main/java/com/dianping/cat/message/spi/MessageConsumerRegistry.java
浏览文件 @
74a20738
package
com.dianping.cat.message.spi
;
import
java.util.
Map
;
import
java.util.
List
;
public
interface
MessageConsumerRegistry
{
public
void
registerFilter
(
MessageFilter
filter
);
public
void
registerConsumer
(
MessageConsumer
consumer
);
public
Map
<
String
,
MessageConsumer
>
getConsumers
();
public
List
<
MessageConsumer
>
getConsumers
();
}
\ No newline at end of file
cat-core/src/main/java/com/dianping/cat/message/spi/internal/DefaultMessageConsumerRegistry.java
浏览文件 @
74a20738
package
com.dianping.cat.message.spi.internal
;
import
java.util.
LinkedHashMap
;
import
java.util.
ArrayList
;
import
java.util.List
;
import
java.util.Map
;
import
com.dianping.cat.message.spi.MessageConsumer
;
import
com.dianping.cat.message.spi.MessageConsumerRegistry
;
import
com.dianping.cat.message.spi.MessageFilter
;
public
class
DefaultMessageConsumerRegistry
implements
MessageConsumerRegistry
{
private
Map
<
String
,
MessageConsumer
>
m_consumers
=
new
LinkedHashMap
<
String
,
MessageConsumer
>();
private
List
<
MessageConsumer
>
m_consumers
=
new
ArrayList
<
MessageConsumer
>();
@Override
public
Map
<
String
,
MessageConsumer
>
getConsumers
()
{
public
List
<
MessageConsumer
>
getConsumers
()
{
return
m_consumers
;
}
@Override
public
void
registerConsumer
(
MessageConsumer
consumer
)
{
m_consumers
.
put
(
consumer
.
getId
(),
consumer
);
}
@Override
public
void
registerFilter
(
MessageFilter
filter
)
{
}
static
class
Entry
{
private
MessageConsumer
m_message
;
private
List
<
MessageFilter
>
m_filters
;
m_consumers
.
add
(
consumer
);
}
}
cat-core/src/main/java/com/dianping/cat/message/spi/internal/
MessageDispatch
er.java
→
cat-core/src/main/java/com/dianping/cat/message/spi/internal/
DefaultMessageHandl
er.java
浏览文件 @
74a20738
package
com.dianping.cat.message.spi.internal
;
import
java.util.
Collection
;
import
java.util.
List
;
import
com.dianping.cat.message.io.MessageReceiver
;
import
com.dianping.cat.message.spi.MessageConsumer
;
import
com.dianping.cat.message.spi.MessageConsumerRegistry
;
import
com.dianping.cat.message.spi.MessageHandler
;
import
com.dianping.cat.message.spi.MessageTree
;
import
com.site.lookup.annotation.Inject
;
public
class
MessageDispatch
er
implements
MessageHandler
,
Runnable
{
public
class
DefaultMessageHandl
er
implements
MessageHandler
,
Runnable
{
@Inject
private
MessageReceiver
m_receiver
;
@Inject
private
Default
MessageConsumerRegistry
m_registry
;
private
MessageConsumerRegistry
m_registry
;
@Override
public
void
handle
(
MessageTree
tree
)
{
Collection
<
MessageConsumer
>
comsumers
=
m_registry
.
getConsumers
().
values
();
List
<
MessageConsumer
>
consumers
=
m_registry
.
getConsumers
();
int
size
=
consumers
.
size
();
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
MessageConsumer
consumer
=
consumers
.
get
(
i
);
for
(
MessageConsumer
consumer
:
comsumers
)
{
try
{
consumer
.
consume
(
tree
);
}
catch
(
Exception
e
)
{
...
...
@@ -37,7 +41,7 @@ public class MessageDispatcher implements MessageHandler, Runnable {
m_receiver
=
receiver
;
}
public
void
setRegistry
(
Default
MessageConsumerRegistry
registry
)
{
public
void
setRegistry
(
MessageConsumerRegistry
registry
)
{
m_registry
=
registry
;
}
}
cat-core/src/main/resources/META-INF/plexus/components.xml
浏览文件 @
74a20738
...
...
@@ -28,6 +28,10 @@
<role>
com.dianping.cat.message.MessageProducer
</role>
<implementation>
com.dianping.cat.message.internal.DefaultMessageProducer
</implementation>
</component>
<component>
<role>
com.dianping.cat.message.spi.MessageConsumerRegistry
</role>
<implementation>
com.dianping.cat.message.spi.internal.DefaultMessageConsumerRegistry
</implementation>
</component>
<component>
<role>
com.dianping.cat.message.spi.MessageCodec
</role>
<role-hint>
plain-text
</role-hint>
...
...
@@ -35,22 +39,10 @@
</component>
<component>
<role>
com.dianping.cat.message.spi.MessageHandler
</role>
<implementation>
com.dianping.cat.message.spi.internal.MessageDispatcher
</implementation>
<requirements>
<requirement>
<role>
com.dianping.cat.message.io.MessageReceiver
</role>
<role-hint>
in-memory
</role-hint>
</requirement>
</requirements>
</component>
<component>
<role>
com.dianping.cat.message.broker.MessageBroker
</role>
<role-hint>
in-memory
</role-hint>
<implementation>
com.dianping.cat.message.broker.DefaultMessageBroker
</implementation>
<implementation>
com.dianping.cat.message.spi.internal.DefaultMessageHandler
</implementation>
<requirements>
<requirement>
<role>
com.dianping.cat.message.io.MessageSender
</role>
<role-hint>
in-memory
</role-hint>
<role>
com.dianping.cat.message.spi.MessageConsumerRegistry
</role>
</requirement>
<requirement>
<role>
com.dianping.cat.message.io.MessageReceiver
</role>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录