/* * Copyright 2011 Toni Menzel. * Copyright (C) 2014 Guillaume Nodet * * 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. */ package org.ops4j.pax.url.mvn; /** * An enumeration of constants related to maven handler. * * @author Toni Menzel * @author Guillaume Nodet * @since September 10, 2010 */ public interface ServiceConstants { /** * Service PID used for configuration. */ String PID = "org.ops4j.pax.url.mvn"; /** * The protocol name. */ String PROTOCOL = "mvn"; /** * Warning: use only in framework properties. If present, do not accept configuration, wait for one without this flag. */ String REQUIRE_CONFIG_ADMIN_CONFIG = "requireConfigAdminConfig"; /** * Add the default local repo (e.g. ~/.m2/repository) as a remote repo. Useful when setting the local repo to be e.g. karaf system repo. * BE CAREFUL! if you are using mirrors, do not mirror local repos! e.g. use <mirrorOf>external:*</mirrorOf> */ String PROPERTY_LOCAL_REPO_AS_REMOTE = "defaultLocalRepoAsRemote"; /** * Global update policy property name. * <p> * Provides <a href="http://maven.apache.org/settings.html">repository update policy</a> which * will be applied to all configured repositories. * <p> * See <a href= * "http://sonatype.github.com/sonatype-aether/apidocs/org/sonatype/aether/util/DefaultRepositorySystemSession.html#setUpdatePolicy%28java.lang.String%29" * >DefaultRepositorySystemSession</a> */ String PROPERTY_GLOBAL_UPDATE_POLICY = "globalUpdatePolicy"; /** * Global checksum policy property name. * <p> * Provides <a href="http://maven.apache.org/settings.html">repository checksum policy</a> which * will be applied to all configured repositories. * <p> * See <a href= * "http://sonatype.github.com/sonatype-aether/apidocs/org/sonatype/aether/util/DefaultRepositorySystemSession.html#setChecksumPolicy%28java.lang.String%29" * >DefaultRepositorySystemSession</a> */ String PROPERTY_GLOBAL_CHECKSUM_POLICY = "globalChecksumPolicy"; /** * Certificate check configuration property name. */ String PROPERTY_CERTIFICATE_CHECK = "certificateCheck"; /** * Maven settings file configuration property name. */ String PROPERTY_SETTINGS_FILE = "settings"; /** * LocalRepository configuration property name. */ String PROPERTY_LOCAL_REPOSITORY = "localRepository"; /** * DefaultRepositories configuration property name */ String PROPERTY_DEFAULT_REPOSITORIES = "defaultRepositories"; /** * Repositories configuration property name. */ String PROPERTY_REPOSITORIES = "repositories"; /** * Use fallback repositories switch configuration property name. */ String PROPERTY_USE_FALLBACK_REPOSITORIES = "useFallbackRepositories"; /** * Proxy support configuration property name. */ String PROPERTY_PROXY_SUPPORT = "proxySupport"; String PROPERTY_SECURITY = "security"; /** * Option to mark repository as allowing snapshots. */ String OPTION_ALLOW_SNAPSHOTS = "snapshots"; /** * Option to configure the default timeout; use a default timeout of * 5 secs by default. */ String PROPERTY_TIMEOUT = "timeout"; /** * Option to set maven offline. */ String PROPERTY_OFFLINE = "offline"; /** * Option to mark repository as not allowing releases. */ String OPTION_DISALLOW_RELEASES = "noreleases"; /** * Option to mark path as a parent directory of repo directories. * So at runtime the parent directory is scanned for subdirectories * and each subdirectory is used as a remote repo */ String OPTION_MULTI = "multi"; /** * Options separator in repository url. */ String SEPARATOR_OPTIONS = "@"; /** * Proxies given via property. * Expected layout: http:host=foo,port=8080;https:host=bar,port=9090 */ String PROPERTY_PROXIES = "proxies"; /** * Default enable proxies or not if property PROPERTY_PROXY_SUPPORT is not set at all. */ boolean PROPERTY_PROXY_SUPPORT_DEFAULT = true; /** * segment in repository spec that gives the name of the repo. Crucial for Aether handler. */ String OPTION_ID = "id"; String OPTION_UPDATE = "update"; String OPTION_RELEASES_UPDATE = "releasesUpdate"; String OPTION_SNAPSHOTS_UPDATE = "snapshotsUpdate"; String OPTION_CHECKSUM = "checksum"; String OPTION_RELEASES_CHECKSUM = "releasesChecksum"; String OPTION_SNAPSHOTS_CHECKSUM = "snapshotsChecksum"; /** * Configure {@link java.net.SocketOptions#SO_TIMEOUT}. * If not specified, generic {@link #PROPERTY_TIMEOUT} is used. */ String PROPERTY_SOCKET_SO_TIMEOUT = "socket.readTimeout"; /** * Configure {@link java.net.SocketOptions#SO_KEEPALIVE}. Defaults to <code>false</code> */ String PROPERTY_SOCKET_SO_KEEPALIVE = "socket.keepAlive"; /** * Configure {@link java.net.SocketOptions#SO_LINGER}. Defaults to <code>-1</code>. */ String PROPERTY_SOCKET_SO_LINGER = "socket.linger"; /** * Configure {@link java.net.SocketOptions#SO_REUSEADDR}. Defaults to <code>false</code> */ String PROPERTY_SOCKET_SO_REUSEADDRESS = "socket.reuseAddress"; /** * Configure {@link java.net.SocketOptions#TCP_NODELAY}. Defaults to <code>true</code> */ String PROPERTY_SOCKET_TCP_NODELAY = "socket.tcpNoDelay"; /** * Configure connection timeout value for <code>java.net.Socket#connect(SocketAddress, int)</code> operation. * If not specified, generic {@link #PROPERTY_TIMEOUT} is used. */ String PROPERTY_SOCKET_CONNECTION_TIMEOUT = "socket.connectionTimeout"; /** * Configure buffer size for HTTP connections in:<ul> * <li>org.apache.http.impl.io.SessionInputBufferImpl#buffer</li> * <li>org.apache.http.impl.io.SessionOutputBufferImpl#buffer</li> * </ul> * Defaults to <code>8192</code>. */ String PROPERTY_CONNECTION_BUFFER_SIZE = "connection.bufferSize"; /** * Configure httpclient's <code>org.apache.http.impl.client.DefaultHttpRequestRetryHandler</code>. * Default value is <code>3</code> */ String PROPERTY_CONNECTION_RETRY_COUNT = "connection.retryCount"; /** * <p>Property for configuration of non-canonical Maven behavior. If set to <code>true</code>, * {@link MavenResolver} will use Aether policies to determine whether already available non-SNAPSHOT * artifact should be redownloaded.</p> * <p>Default value is <code>false</code>.</p> */ String PROPERTY_UPDATE_RELEASES = "updateReleases"; }