blob: fc0b18b81a4a92c3d42c859f80a2dd06789224e9 [file] [log] [blame]
/*
* Copyright 1999-2015 dangdang.com.
* <p>
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* </p>
*/
package io.elasticjob.cloud.scheduler.mesos;
import lombok.NoArgsConstructor;
import java.util.HashSet;
import java.util.Set;
/**
* Mesos所支持的压缩类型.
*
* @author zhangliang
*/
@NoArgsConstructor
public final class SupportedExtractionType {
private static final Set<String> EXTRACTION_TYPES = new HashSet<>(9, 1);
static {
EXTRACTION_TYPES.add(".tar");
EXTRACTION_TYPES.add(".tar.gz");
EXTRACTION_TYPES.add(".tar.bz2");
EXTRACTION_TYPES.add(".tar.xz");
EXTRACTION_TYPES.add(".gz");
EXTRACTION_TYPES.add(".tgz");
EXTRACTION_TYPES.add(".tbz2");
EXTRACTION_TYPES.add(".txz");
EXTRACTION_TYPES.add(".zip");
}
/**
* 判断URL的文件是否为压缩格式.
* @param appURL 应用URL地址
* @return URL的文件是否为压缩格式
*/
public static boolean isExtraction(final String appURL) {
for (String each : EXTRACTION_TYPES) {
if (appURL.endsWith(each)) {
return true;
}
}
return false;
}
}