首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态添加新资源- CoAP

动态添加新资源- CoAP
EN

Stack Overflow用户
提问于 2016-07-04 00:57:37
回答 0查看 338关注 0票数 0

一旦CoAP服务器启动,我需要动态添加新资源。但是,为了访问新的资源,我必须停止并重新启动服务器。我认为添加新资源与在已启动的HTTP服务器中添加新的HTTP servlet相同。

在这里,我添加了用于添加动态资源的源代码。如果我遗漏了什么,请告诉我。

代码语言:javascript
复制
private static CoapServer server;

public CoAPEventAdapter(InputEventAdapterConfiguration eventAdapterConfiguration,
                        Map<String, String> globalProperties) {
    this.eventAdapterConfiguration = eventAdapterConfiguration;
    this.globalProperties = globalProperties;
    if(server == null){
        server = new CoapServer();
        server.start();
    }
}

@Override
public void connect() {
    registerDynamicEndpoint(eventAdapterConfiguration.getName());
    isConnected = true;
} 

private void registerDynamicEndpoint(String adapterName) {
        server.stop();
        server.add(new HelloWorldResource(adapterName));
        server.start();
}


class HelloWorldResource extends CoapResource {

    public HelloWorldResource(String resourceName) {
        // set resource identifier
        super(resourceName);
        // set display name
        getAttributes().setTitle("Hello-World Resource");
    }

    @Override
    public void handleGET(CoapExchange exchange) {

        // respond to the request
        exchange.respond("Hello World!");
    }
}
EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38172237

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档