/* ****************************************************************************
*
* mapGetContextEntityTypes - 
*/
HttpStatusCode mapGetContextEntityTypes
(
  const std::string&                    typeName,
  DiscoverContextAvailabilityResponse*  response,
  ConnectionInfo*                       ciP
)
{
  DiscoverContextAvailabilityRequest  request;
  EntityId                            entityId(".*", typeName, "true");

  request.entityIdVector.push_back(&entityId);
  return mongoDiscoverContextAvailability(&request, response, ciP->tenant, ciP->uriParam, ciP->servicePathV);
}
/* ****************************************************************************
*
* mapGetContextEntitiesByEntityId - 
*/
HttpStatusCode mapGetContextEntitiesByEntityId
(
  const std::string&                    entityId,
  const std::string&                    entityType,
  DiscoverContextAvailabilityResponse*  response,
  ConnectionInfo*                       ciP
)
{
  DiscoverContextAvailabilityRequest request;
  EntityId                           entity(entityId, entityType, "false");

  request.entityIdVector.push_back(&entity);
  return mongoDiscoverContextAvailability(&request, response, ciP->tenant, ciP->uriParam);
}
/* ****************************************************************************
*
* postDiscoverContextAvailability - 
*/
std::string postDiscoverContextAvailability
(
  ConnectionInfo*            ciP,
  int                        components,
  std::vector<std::string>&  compV,
  ParseData*                 parseDataP
)
{
  DiscoverContextAvailabilityResponse*  dcarP = &parseDataP->dcars.res;
  std::string                           answer;

  ciP->httpStatusCode = mongoDiscoverContextAvailability(&parseDataP->dcar.res, dcarP, ciP->tenant, ciP->uriParam, ciP->servicePathV);
  answer = dcarP->render(DiscoverContextAvailability, ciP->outFormat, "");

  return answer;
}
/* ****************************************************************************
*
* mapGetEntityByIdAttributeByName - 
*/
HttpStatusCode mapGetEntityByIdAttributeByName
(
  const std::string&                    entityId,
  const std::string&                    entityType,
  const std::string&                    attributeName,
  DiscoverContextAvailabilityResponse*  response,
  ConnectionInfo*                       ciP
)
{
  DiscoverContextAvailabilityRequest  request;
  EntityId                            entity(entityId, entityType, "false");

  request.entityIdVector.push_back(&entity);
  request.attributeList.push_back(attributeName);

  return mongoDiscoverContextAvailability(&request, response, ciP->tenant, ciP->uriParam, ciP->servicePathV);
}