public Optional stopContainer()

in functions/CDDDockerJava/src/main/java/com/amazonaws/greengrass/cdddocker/docker/BasicDockerHelper.java [159:188]


    public Optional<String> stopContainer(String nameOrId) {
        List<Container> containers = listContainers();

        Optional<Container> optionalContainer = containers.stream()
                .filter(container -> container.getId().equals(nameOrId))
                .findFirst();

        if (!optionalContainer.isPresent()) {
            // The value passed may be a name, it isn't a valid container ID
            Optional<Image> optionalImage = getImageFromTag(nameOrId);

            if (!optionalImage.isPresent()) {
                return Optional.empty();
            }

            Image image = optionalImage.get();

            optionalContainer = getContainerFromImageId(image.getId());
        }

        if (!optionalContainer.isPresent()) {
            return Optional.empty();
        }

        Container container = optionalContainer.get();

        combinedDockerClientProvider.getLocalDockerClient().stopContainerCmd(container.getId()).exec();

        return Optional.of(container.getId());
    }