Ejemplo n.º 1
0
SchedulerDriverStatus scheduler_declineOffer(
    SchedulerDriverPtr driver,
    ProtobufObj* offerId,
    ProtobufObj* filters)
{
  TRACE("scheduler_declineOffer()\n");
  assert(driver != NULL);
  assert(offerId != NULL);

  MesosSchedulerDriver* mdriver =
      reinterpret_cast<MesosSchedulerDriver*>(driver);

  Filters filters_;
  if (filters != NULL && filters->data != NULL) {
    if (!utils::deserialize<Filters>(filters_, filters)) {
      return DRIVER_ABORTED;
    }
  }

  OfferID offer;
  if (!utils::deserialize<OfferID>(offer, offerId)) {
    return DRIVER_ABORTED;
  }

  return mdriver->declineOffer(offer, filters_);
}
Ejemplo n.º 2
0
SchedulerDriverStatus scheduler_declineOffer(SchedulerPtrPair state, ErlNifBinary* offerId, ErlNifBinary* filters)
 {
    assert(state.driver != NULL);
    assert(offerId != NULL);

    OfferID offerid_pb;
    Filters filter_pb;

    if(!deserialize<OfferID>(offerid_pb,offerId)) { return DRIVER_ABORTED; };
    if(!deserialize<Filters>(filter_pb,filters)) { return DRIVER_ABORTED; };

    MesosSchedulerDriver* driver = reinterpret_cast<MesosSchedulerDriver*> (state.driver);
    return driver->declineOffer(offerid_pb,
                              filter_pb);
 }