/******************************************************************************* * Copyright (c) 2014, 2016 Red Hat. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Red Hat - Initial Contribution *******************************************************************************/ package org.eclipse.linuxtools.docker.core; import java.util.List; public interface IDockerImage { /** the literal value for the 'latest' tag on Docker images. */ String TAG_LATEST = "latest"; //$NON-NLS-1$ String created(); String createdDate(); /** * @return the full image id */ String id(); String parentId(); List<String> repoTags(); /** * @return the first repo/name of the Image. */ String repo(); /** * @return all tags associated with the first repo/name of this image */ List<String> tags(); Long size(); Long virtualSize(); /** * @return {@code true} is this is an intermediate image, i.e., it is the * parent of another image and it is not tagged (no repo/tag). */ boolean isIntermediateImage(); /** * @return {@code true} is this is a top-level image, i.e., it is not the * parent of another image, but it has no repo/tag (they were * removed when another image was built). */ boolean isDangling(); /** * @return the {@link IDockerConnection} associated with (or used to retrieve) this {@link IDockerImage} */ IDockerConnection getConnection(); }