@Modified
    public void modified(ComponentContext context) {
        if (context == null) {
            log.info("No component configuration");
            return;
        } else {
            Dictionary<?, ?> properties = context.getProperties();

            int newPollFrequency = getNewPollFrequency(properties, linkPollFrequencySeconds);
            int newPollDelay = getNewPollDealy(properties, linkPollDelaySeconds);
            int newDiscoveryTimeout = getNewDiscoveryTimeout(properties, linkDiscoveryTimeoutSeconds);
            if (newPollFrequency != linkPollFrequencySeconds ||
                    newPollDelay != linkPollDelaySeconds ||
                    newDiscoveryTimeout != linkDiscoveryTimeoutSeconds) {
                linkPollFrequencySeconds = newPollFrequency;
                linkPollDelaySeconds = newPollDelay;
                linkDiscoveryTimeoutSeconds = newDiscoveryTimeout;
                //stops the old scheduled task
                scheduledTask.cancel(true);
                //schedules new task at the new polling rate
                scheduledTask = schedulePolling();
            }
        }
        log.info("Modified");
    }
@Test
    public void modified() throws Exception {
        provider.modified(CONTEXT);
        assertEquals("Incorrect polling frequency, should be default", 2,
                     provider.linkPollFrequencySeconds);
        assertEquals("Incorrect polling delay , should be default", 1,
                     provider.linkPollDelaySeconds);
        assertEquals("Incorrect polling discovery delay , should be default", 1,
                     provider.linkDiscoveryTimeoutSeconds);

    }