Peersim如何解析文件
来源:互联网 发布:斯米兰岛和普吉岛 知乎 编辑:程序博客网 时间:2024/05/16 07:25
开始接触peersim的时候,最早想知道的问题就是peersim如何读取配置文件,如何获取配置信息。
有关配置文件处理的类都在报peersim.config中,主要看Configuration和FastConfig两个类来获取配置信息。
1)configContainer将所有配置信息储存在变量config(import java.util.Properties)中;
/**
* The properties object that stores all configuration information.
*/
private Properties config;
并封装了很多读取配置信息的方法,但是都是提供给Configration类调用,用户通过调用Configuration中的方法获取配置信息:
可根据需要获取不同类型的返回值
2)configProperites,继承了Properties,扩展了Properties的功能。
3)Configuration,获取配置信息,主要是对configContainer的方法进行了封装,使获取配置信息更方便;
注意这一个配置参数:
static final String PAR_INCLUDE = "include"; #用来配置init或者control的运行先后顺序
4)FastConfig,专门快速获取在协议中配置的linkable和transport:
private static final String PAR_LINKABLE = "linkable";
private static final String PAR_TRANSPORT = "transport";
public static int getLinkable(int pid)
public static int getTransport(int pid)
其实用户只需要调用Configuration中的方法来获取配置的信息,例如,
这是一个用户自定义的观测各节点数值的control类,只列出构造函数:
01
02 public class AverageObserver implements Control {
03
04 private static final String PAR_ACCURACY = "accuracy";
05
06 private static final String PAR_PROT = "protocol";
07
08 private final String name;
09
10 private final double accuracy;
11
12 /** Protocol identifier; obtained from config property {@link #PAR_PROT}. */
13 private final int pid;
14
15 public AverageObserver(String name) {
16 this.name = name;
17 accuracy = Configuration.getDouble(name + "." + PAR_ACCURACY, -1);
18 pid = Configuration.getPid(name + "." + PAR_PROT);
19 }
20 }
看这个实现control接口的类,接受accuracy和protocol两个参数,配置的时候应该是:
protocol.avg example.aggregation.AverageFunction
control.avgo AverageObserver
control.avgo.protocol avg #avg就是上面第一行配置好的protocol
accuray没有配置,configuraiton就把默认值-1传给它(Configuration.getDouble(name + "." + PAR_ACCURACY, -1)
注意:构造函数的参数name就是前缀control.avgo,想要配置参数,类的构造函数就必须有且只有一个string参数。
上面说的主要是peersim如何获取配置信心的过程,下面列出peersim内核中所有可能的配置信息(即非用户定义的配置参数):
network.node
network.initialCapacity
network.size
simulation.cycles
simulation.nodefaultcycle
simulation.endtime
simulation.logtime
simulation.eventqueue
- Peersim如何解析文件
- peerSim配置文件解析
- 关于Peersim的配置管理器的解析
- 如何将kadmelia协议在peersim中跑起来
- 如何解析properties文件
- 如何解析xml文件
- 如何解析xml文件
- 如何解析Plist文件?
- peersim简介
- PeerSIm简介
- PeerSim初学
- 剑指PeerSim
- 如何解析邮件PST文件
- python如何解析config文件
- ios如何解析xml文件
- ios如何解析xml文件
- ios如何解析xml文件
- 如何解析远程xml文件?
- eclipse中JBOSS在linux下使用debug模式报错cannot connect to VM Socket closed
- Drawable
- 简单的信息加密解密
- Java学习,第二讲
- Bada学习-(二十四)JavaScript 调试器
- Peersim如何解析文件
- android:text 文字阴影设置
- Vc 如何启动一个进程
- 多线程编程之三——线程间通讯
- vmware 网络设置
- VSS使用积累
- SQL 转义字符'(单引号)
- MVC+WCF构建WEB2.0网站(更新完毕)
- Vc 如何访问另外一个进程的窗口