Connector 作为一个Java项目解决的问题

Authentication:

 

配置信息的本地存储(跨平台):

1 定义了AbstractConfigurationRedgistry接口。在不同的平台上实现该接口。

2 定义了 ServerEntry LibraryEntry ConnectorEntry ProxyEntry等平台无关的Bean。所有实现AbstractConfigurationRedgistry接口的类使用这些Bean。

3 在Windows平台上是存储在注册表中(为了与DI一致),其他平台利用Eclipse的。。功能

 

文档缓存:

1 什么时候需要缓存(在本地保存副本)

2 在什么地方缓存

3 什么时候使用这些缓存

 

跨Service平台:

1 定义了与Service平台无关的Service Provider接口和异常

2 在不同的插件中实现spi

3 针对不同的ServiceProvider创建不同的session,并把该sp提供的服务保存在session中。每个文档有serverUrl属性,可以在注册表中查询其personalality(属于哪个sp)。在sessionManager这个单例中查找相应的session,以调用正确的sp服务。

4 定义了独立于sp的去对象化的模型ServiceData。

 

UI的快速反映:

1 在执行网络操作的时候启动新的线程(非UI线程),在UI上显示pending图标(代理模式的应用)

2 在进行网络操作之前,进行必要的检查,避免不合法的调用,以减少网络操作的次数和简化错误处理的模式

3 在不需要load的情况下尽量少的load(每次重新进入原来打开过的页面的时候并不是全部执行网络load的操作,通过isloaded标记来判断是否已经load过,通过shouldload()方法来判断是否需要load,如果不需要load则使用contentProvider实现的getDeferredElements()方法来提供内容)

 

可复用的UI组件:

1 使用Eclipse插件技术。别的Connector直接应用我们的ui插件就可以使用已经定义好的UI组件

2 定义独立于底层service概念的模型。

 

支持代理服务器访问:

1 使用stub的代理设置机制

 

执行本地应用(浏览器,mail客户端):

1

 

文档模型的灵活性(独立于Service的模型定义,适应变化,使用灵活):

 

多国语言:

1 使用UIMessages_en.property来存储相应的界面文字素材

2 在UIMessages.java记录查询key

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值