Search in sources :

Example 6 with RegistrationUpdate

use of org.eclipse.leshan.server.registration.RegistrationUpdate in project leshan by eclipse.

the class InMemoryRegistrationStoreTest method update_registration_to_extend_time_to_live.

@Test
public void update_registration_to_extend_time_to_live() {
    givenASimpleRegistration(0L);
    store.addRegistration(registration);
    Assert.assertFalse(registration.isAlive());
    RegistrationUpdate update = new RegistrationUpdate(registrationId, Identity.unsecure(address, port), lifetime, null, null, null, null);
    UpdatedRegistration updatedRegistration = store.updateRegistration(update);
    Assert.assertTrue(updatedRegistration.getUpdatedRegistration().isAlive());
    Registration reg = store.getRegistrationByEndpoint(ep);
    Assert.assertTrue(reg.isAlive());
}
Also used : UpdatedRegistration(org.eclipse.leshan.server.registration.UpdatedRegistration) Registration(org.eclipse.leshan.server.registration.Registration) UpdatedRegistration(org.eclipse.leshan.server.registration.UpdatedRegistration) RegistrationUpdate(org.eclipse.leshan.server.registration.RegistrationUpdate) Test(org.junit.Test)

Example 7 with RegistrationUpdate

use of org.eclipse.leshan.server.registration.RegistrationUpdate in project leshan by eclipse.

the class RedisSecureIntegrationTestHelper method createServer.

@Override
public void createServer() {
    LeshanServerBuilder builder = new LeshanServerBuilder();
    StaticModelProvider modelProvider = new StaticModelProvider(createObjectModels());
    builder.setObjectModelProvider(modelProvider);
    DefaultLwM2mNodeDecoder decoder = new DefaultLwM2mNodeDecoder();
    builder.setDecoder(decoder);
    builder.setLocalAddress(new InetSocketAddress(InetAddress.getLoopbackAddress(), 0));
    builder.setLocalSecureAddress(new InetSocketAddress(InetAddress.getLoopbackAddress(), 0));
    // Create redis store
    String redisURI = System.getenv("REDIS_URI");
    if (redisURI == null)
        redisURI = "";
    Pool<Jedis> jedis = new JedisPool(redisURI);
    builder.setRegistrationStore(new RedisRegistrationStore(jedis));
    builder.setSecurityStore(new RedisSecurityStore(jedis));
    // Build server !
    server = builder.build();
    // monitor client registration
    resetLatch();
    server.getRegistrationService().addListener(new RegistrationListener() {

        @Override
        public void updated(RegistrationUpdate update, Registration updatedRegistration, Registration previousRegistration) {
            if (updatedRegistration.getEndpoint().equals(getCurrentEndpoint())) {
                updateLatch.countDown();
            }
        }

        @Override
        public void unregistered(Registration registration, Collection<Observation> observations, boolean expired, Registration newReg) {
            if (registration.getEndpoint().equals(getCurrentEndpoint())) {
                deregisterLatch.countDown();
            }
        }

        @Override
        public void registered(Registration registration, Registration previousReg, Collection<Observation> previousObsersations) {
            if (registration.getEndpoint().equals(getCurrentEndpoint())) {
                last_registration = registration;
                registerLatch.countDown();
            }
        }
    });
}
Also used : StaticModelProvider(org.eclipse.leshan.server.model.StaticModelProvider) RegistrationListener(org.eclipse.leshan.server.registration.RegistrationListener) InetSocketAddress(java.net.InetSocketAddress) Jedis(redis.clients.jedis.Jedis) RedisSecurityStore(org.eclipse.leshan.server.cluster.RedisSecurityStore) LeshanServerBuilder(org.eclipse.leshan.server.californium.LeshanServerBuilder) DefaultLwM2mNodeDecoder(org.eclipse.leshan.core.node.codec.DefaultLwM2mNodeDecoder) Registration(org.eclipse.leshan.server.registration.Registration) RedisRegistrationStore(org.eclipse.leshan.server.cluster.RedisRegistrationStore) Observation(org.eclipse.leshan.core.observation.Observation) JedisPool(redis.clients.jedis.JedisPool) RegistrationUpdate(org.eclipse.leshan.server.registration.RegistrationUpdate)

Aggregations

RegistrationUpdate (org.eclipse.leshan.server.registration.RegistrationUpdate)7 Registration (org.eclipse.leshan.server.registration.Registration)5 Observation (org.eclipse.leshan.core.observation.Observation)3 RegistrationListener (org.eclipse.leshan.server.registration.RegistrationListener)3 Test (org.junit.Test)3 InetSocketAddress (java.net.InetSocketAddress)2 HashMap (java.util.HashMap)2 Link (org.eclipse.leshan.Link)2 DefaultLwM2mNodeDecoder (org.eclipse.leshan.core.node.codec.DefaultLwM2mNodeDecoder)2 LeshanServerBuilder (org.eclipse.leshan.server.californium.LeshanServerBuilder)2 RedisRegistrationStore (org.eclipse.leshan.server.cluster.RedisRegistrationStore)2 StaticModelProvider (org.eclipse.leshan.server.model.StaticModelProvider)2 UpdatedRegistration (org.eclipse.leshan.server.registration.UpdatedRegistration)2 Jedis (redis.clients.jedis.Jedis)2 JedisPool (redis.clients.jedis.JedisPool)2 JsonArray (com.eclipsesource.json.JsonArray)1 JsonObject (com.eclipsesource.json.JsonObject)1 JsonValue (com.eclipsesource.json.JsonValue)1 BindingMode (org.eclipse.leshan.core.request.BindingMode)1 Identity (org.eclipse.leshan.core.request.Identity)1