message: Check unsuported resource before all other capabilities checks
diff: @@ -314,19 +314,31 @@ bool BaseCommandRequest::ParseResultCode(const Json::Value& value,
  void BaseCommandRequest::Run() {
  LOG4CXX_AUTO_TRACE(logger_);
  - if (Validate()) {
  - LOG4CXX_INFO(logger_, "Request message validated successfully!");
  + if (!Validate()) {
  + LOG4CXX_WARN(logger_, "Request message validation failed !");
  + SendResponse(
  + false, result_codes::kInvalidData, "Validation by schema failed");
  + return;
  + }
  + LOG4CXX_TRACE(logger_, "Request message validated successfully!");
  + using application_manager::HmiInterfaces;
  + if (!service_->IsInterfaceAvailable(HmiInterfaces::HMI_INTERFACE_RC)) {
  + LOG4CXX_WARN(logger_, "HMI interface RC is not available");
  + SendResponse(false,
  + result_codes::kUnsupportedResource,
  + "Remote control is not supported by system");
  + return;
  + }
  + LOG4CXX_TRACE(logger_, "RC interface is available!");
  if (CheckPolicyPermissions() && CheckDriverConsent()) {
  if (AqcuireResources()) {
  Execute(); // run child's logic
  }
  - // If resource is not aqcuired AqcuireResources method will
  - // either send response to mobile
  - // or send additional request to HMI to ask driver consent
  - }
  - } else {
  - SendResponse(false, result_codes::kInvalidData, "");
  + // If resource is not aqcuired, AqcuireResources method will either
  + // send response to mobile or
  + // send additional request to HMI to ask driver consent
  }
  + // TODO : send error in case if policy permissions failed
  }
  bool BaseCommandRequest::CheckPolicyPermissions() {
  