class YarnClusterDescriptor implements ClusterDescriptor<ApplicationId> {

	public void addShipFiles(List<File> shipFiles) {
		checkArgument(userJarInclusion != YarnConfigOptions.UserJarInclusion.DISABLED || isUsrLibDirIncludedInShipFiles(shipFiles),
			"This is an illegal ship directory : %s. When setting the %s to %s the name of ship directory can not be %s.",
			ConfigConstants.DEFAULT_FLINK_USR_LIB_DIR,
			YarnConfigOptions.CLASSPATH_INCLUDE_USER_JAR.key(),
			YarnConfigOptions.UserJarInclusion.DISABLED,
			ConfigConstants.DEFAULT_FLINK_USR_LIB_DIR);
		this.shipFiles.addAll(shipFiles);
	}

	public  YarnClusterDescriptor(
			Configuration flinkConfiguration,
			YarnConfiguration yarnConfiguration,
			YarnClient yarnClient,
			YarnClusterInformationRetriever yarnClusterInformationRetriever,
			boolean sharedYarnClient);

}