Class CreateCollection
- java.lang.Object
-
- org.apache.solr.api.JerseyResource
-
- org.apache.solr.handler.admin.api.AdminAPIBase
-
- org.apache.solr.handler.admin.api.CreateCollection
-
- All Implemented Interfaces:
CreateCollectionApi
public class CreateCollection extends AdminAPIBase implements CreateCollectionApi
V2 API for creating a SolrCLoud collectionThis API is analogous to the v1 /admin/collections?action=CREATE command.
-
-
Field Summary
-
Fields inherited from class org.apache.solr.handler.admin.api.AdminAPIBase
coreContainer, solrQueryRequest, solrQueryResponse
-
Fields inherited from class org.apache.solr.api.JerseyResource
containerRequestContext
-
-
Constructor Summary
Constructors Constructor Description CreateCollection(CoreContainer coreContainer, SolrQueryRequest solrQueryRequest, SolrQueryResponse solrQueryResponse)
-
Method Summary
-
Methods inherited from class org.apache.solr.handler.admin.api.AdminAPIBase
disableResponseCaching, fetchAndValidateZooKeeperAwareCoreContainer, insertIfNotNull, recordCollectionForLogAndTracing, resolveAndValidateAliasIfEnabled, resolveCollectionName, submitRemoteMessageAndHandleResponse, validateZooKeeperAwareCoreContainer
-
Methods inherited from class org.apache.solr.api.JerseyResource
ensureRequiredParameterProvided, ensureRequiredRequestBodyProvided, instantiateJerseyResponse, instantiateJerseyResponse
-
-
-
-
Constructor Detail
-
CreateCollection
@Inject public CreateCollection(CoreContainer coreContainer, SolrQueryRequest solrQueryRequest, SolrQueryResponse solrQueryResponse)
-
-
Method Detail
-
createCollection
public SubResponseAccumulatingJerseyResponse createCollection(CreateCollectionRequestBody requestBody) throws Exception
- Specified by:
createCollection
in interfaceCreateCollectionApi
- Throws:
Exception
-
populateDefaultsIfNecessary
public static void populateDefaultsIfNecessary(CoreContainer coreContainer, CreateCollectionRequestBody requestBody) throws IOException
- Throws:
IOException
-
createRemoteMessage
public static org.apache.solr.common.cloud.ZkNodeProps createRemoteMessage(CreateCollectionRequestBody reqBody)
-
copyPrefixedPropertiesWithoutPrefix
public static Map<String,String> copyPrefixedPropertiesWithoutPrefix(org.apache.solr.common.params.SolrParams params, Map<String,String> props, String prefix)
-
createRequestBodyFromV1Params
public static CreateCollectionRequestBody createRequestBodyFromV1Params(org.apache.solr.common.params.SolrParams params, boolean nameRequired)
-
validateRequestBody
public static void validateRequestBody(CreateCollectionRequestBody requestBody)
-
convertV2CreateCollectionMapToV1ParamMap
public static void convertV2CreateCollectionMapToV1ParamMap(Map<String,Object> v2MapVals)
Convert a map representing the v2 request body into v1-appropriate query-parameters.Most v2 APIs using the legacy (i.e. non-JAX-RS) framework implement the v2 API by restructuring the provided parameters so that the v1 codepath can be called. This utility method is provided in pursuit of that usecase. It's not used directly CreateCollectionAPI, which uses the JAX-RS framework, but it's kept here so that logic surrounding collection-creation parameters can be kept in a single place.
-
addToRemoteMessageWithPrefix
public static void addToRemoteMessageWithPrefix(CreateCollectionRequestBody requestBody, Map<String,Object> remoteMessage, String prefix)
-
-