001package co.codewizards.cloudstore.rest.server.service;
002
003import static java.util.Objects.*;
004
005import javax.ws.rs.Consumes;
006import javax.ws.rs.PUT;
007import javax.ws.rs.Path;
008import javax.ws.rs.Produces;
009import javax.ws.rs.core.MediaType;
010
011import org.slf4j.Logger;
012import org.slf4j.LoggerFactory;
013
014import co.codewizards.cloudstore.core.dto.ConfigPropSetDto;
015import co.codewizards.cloudstore.core.repo.transport.RepoTransport;
016
017@Path("_putParentConfigPropSetDto/{repositoryName}")
018@Consumes(MediaType.APPLICATION_XML)
019@Produces(MediaType.APPLICATION_XML)
020public class PutParentConfigPropSetDtoService extends AbstractServiceWithRepoToRepoAuth {
021
022        private static final Logger logger = LoggerFactory.getLogger(PutParentConfigPropSetDtoService.class);
023
024        {
025                logger.debug("<init>: created new instance");
026        }
027
028        @PUT
029        public void beginPutFile(final ConfigPropSetDto parentConfigPropSetDto) {
030                requireNonNull(parentConfigPropSetDto, "parentConfigPropSetDto");
031                final RepoTransport repoTransport = authenticateAndCreateLocalRepoTransport();
032                try {
033                        repoTransport.putParentConfigPropSetDto(parentConfigPropSetDto);
034                } finally {
035                        repoTransport.close();
036                }
037        }
038}