framework/application/examples/src/main/java/org/ldp4j/example/MyApplication.java
@Override
	public void setup(Environment environment, Bootstrap<Configuration> bootstrap) throws ApplicationSetupException {
		LOGGER.info("Configuring application: {}, {}",environment,bootstrap);
		PersonHandler resourceHandler = new PersonHandler();
		PersonContainerHandler containerHandler=new PersonContainerHandler();
		RelativeContainerHandler relativesHandler=new RelativeContainerHandler();
		QueryableResourceHandler queryableHandler=new QueryableResourceHandler();
		this.dynamicResourceHandler = new DynamicResourceHandler();
		BadDataResourceHandler badDataHandler=new BadDataResourceHandler();

		containerHandler.setHandler(resourceHandler);
		relativesHandler.setHandler(resourceHandler);

		resourceHandler.add(this.personResourceName, getInitialData(PersonHandler.ID,PERSON_RESOURCE_NAME));
		containerHandler.add(this.personContainerName, getInitialData(PersonContainerHandler.ID,PERSON_CONTAINER_NAME));
		relativesHandler.add(this.relativeContainerResourceName, getInitialData(RelativeContainerHandler.ID,RELATIVE_CONTAINER_NAME));
		queryableHandler.add(this.queryableResourceName, getInitialData(QueryableResourceHandler.ID,QUERYABLE_RESOURCE_NAME));
		this.dynamicResourceHandler.add(this.dynamicResourceName, getInitialData(DynamicResourceHandler.ID,DYNAMIC_RESOURCE_NAME));
		badDataHandler.add(this.badDataResourceName, badDataHandler.getRepresentation());

		bootstrap.addHandler(resourceHandler);
		bootstrap.addHandler(containerHandler);
		bootstrap.addHandler(relativesHandler);
		bootstrap.addHandler(queryableHandler);
		bootstrap.addHandler(this.dynamicResourceHandler);
		bootstrap.addHandler(badDataHandler);

		environment.publishResource(this.personResourceName, PersonHandler.class, ROOT_PERSON_RESOURCE_PATH);
		environment.publishResource(this.personContainerName, PersonContainerHandler.class, ROOT_PERSON_CONTAINER_PATH);
		environment.publishResource(this.queryableResourceName, QueryableResourceHandler.class, ROOT_QUERYABLE_RESOURCE_PATH);
		environment.publishResource(this.dynamicResourceName, DynamicResourceHandler.class, ROOT_DYNAMIC_RESOURCE_PATH);
		environment.publishResource(this.badDataResourceName, BadDataResourceHandler.class, ROOT_BAD_DATA_RESOURCE_PATH);

		this.executorService =
			Executors.
				newScheduledThreadPool(
					1,
					new ThreadFactoryBuilder().
						setNameFormat("daemon-updater-thread-%d").
						setUncaughtExceptionHandler(new LoggedUncaughtExceptionHandler(LOGGER)).
						build());
		LOGGER.info("Configuration completed.");
	}
@Override
	public void setup(Environment environment, Bootstrap<Configuration> bootstrap) throws ApplicationSetupException {
		LOGGER.info("Configuring application: {}, {}",environment,bootstrap);
		PersonHandler resourceHandler = new PersonHandler();
		PersonContainerHandler containerHandler=new PersonContainerHandler();
		RelativeContainerHandler relativesHandler=new RelativeContainerHandler();
		QueryableResourceHandler queryableHandler=new QueryableResourceHandler();
		this.dynamicResourceHandler = new DynamicResourceHandler();
		BadDataResourceHandler badDataHandler=new BadDataResourceHandler();

		containerHandler.setHandler(resourceHandler);
		relativesHandler.setHandler(resourceHandler);

		resourceHandler.add(this.personResourceName, getInitialData(PersonHandler.ID,PERSON_RESOURCE_NAME));
		containerHandler.add(this.personContainerName, getInitialData(PersonContainerHandler.ID,PERSON_CONTAINER_NAME));
		relativesHandler.add(this.relativeContainerResourceName, getInitialData(RelativeContainerHandler.ID,RELATIVE_CONTAINER_NAME));
		queryableHandler.add(this.queryableResourceName, getInitialData(QueryableResourceHandler.ID,QUERYABLE_RESOURCE_NAME));
		this.dynamicResourceHandler.add(this.dynamicResourceName, getInitialData(DynamicResourceHandler.ID,DYNAMIC_RESOURCE_NAME));
		badDataHandler.add(this.badDataResourceName, badDataHandler.getRepresentation());

		bootstrap.addHandler(resourceHandler);
		bootstrap.addHandler(containerHandler);
		bootstrap.addHandler(relativesHandler);
		bootstrap.addHandler(queryableHandler);
		bootstrap.addHandler(this.dynamicResourceHandler);
		bootstrap.addHandler(badDataHandler);

		environment.publishResource(this.personResourceName, PersonHandler.class, ROOT_PERSON_RESOURCE_PATH);
		environment.publishResource(this.personContainerName, PersonContainerHandler.class, ROOT_PERSON_CONTAINER_PATH);
		environment.publishResource(this.queryableResourceName, QueryableResourceHandler.class, ROOT_QUERYABLE_RESOURCE_PATH);
		environment.publishResource(this.dynamicResourceName, DynamicResourceHandler.class, ROOT_DYNAMIC_RESOURCE_PATH);
		environment.publishResource(this.badDataResourceName, BadDataResourceHandler.class, ROOT_BAD_DATA_RESOURCE_PATH);

		this.executorService =
			Executors.
				newScheduledThreadPool(
					1,
					new ThreadFactoryBuilder().
						setNameFormat("daemon-updater-thread-%d").
						setUncaughtExceptionHandler(new LoggedUncaughtExceptionHandler(LOGGER)).
						build());
		LOGGER.info("Configuration completed.");
	}
{@inheritDoc}