MCPcopy Create free account
hub / github.com/apache/mesos / createAgentResponse

Function createAgentResponse

src/common/protobuf_utils.cpp:1511–1586  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1509
1510
1511mesos::master::Response::GetAgents::Agent createAgentResponse(
1512 const mesos::internal::master::Slave& slave,
1513 const Option<DrainInfo>& drainInfo,
1514 bool deactivated,
1515 const Option<Owned<ObjectApprovers>>& approvers)
1516{
1517 mesos::master::Response::GetAgents::Agent agent;
1518
1519 agent.mutable_agent_info()->CopyFrom(slave.info);
1520
1521 agent.set_pid(string(slave.pid));
1522 agent.set_active(slave.active);
1523 agent.set_deactivated(deactivated);
1524 agent.set_version(slave.version);
1525
1526 agent.mutable_registered_time()->set_nanoseconds(
1527 slave.registeredTime.duration().ns());
1528
1529 if (slave.reregisteredTime.isSome()) {
1530 agent.mutable_reregistered_time()->set_nanoseconds(
1531 slave.reregisteredTime->duration().ns());
1532 }
1533
1534 agent.mutable_agent_info()->clear_resources();
1535 foreach (const Resource& resource, slave.info.resources()) {
1536 if (approvers.isNone() || approvers.get()->approved<VIEW_ROLE>(resource)) {
1537 agent.mutable_agent_info()->add_resources()->CopyFrom(resource);
1538 }
1539 }
1540
1541 foreach (Resource resource, slave.totalResources) {
1542 if (approvers.isNone() || approvers.get()->approved<VIEW_ROLE>(resource)) {
1543 convertResourceFormat(&resource, ENDPOINT);
1544 agent.add_total_resources()->CopyFrom(resource);
1545 }
1546 }
1547
1548 foreach (Resource resource, Resources::sum(slave.usedResources)) {
1549 if (approvers.isNone() || approvers.get()->approved<VIEW_ROLE>(resource)) {
1550 convertResourceFormat(&resource, ENDPOINT);
1551 agent.add_allocated_resources()->CopyFrom(resource);
1552 }
1553 }
1554
1555 foreach (Resource resource, slave.offeredResources) {
1556 if (approvers.isNone() || approvers.get()->approved<VIEW_ROLE>(resource)) {
1557 convertResourceFormat(&resource, ENDPOINT);
1558 agent.add_offered_resources()->CopyFrom(resource);
1559 }
1560 }
1561
1562 agent.mutable_capabilities()->CopyFrom(
1563 slave.capabilities.toRepeatedPtrField());
1564
1565 foreachvalue (
1566 const mesos::internal::master::Slave::ResourceProvider& resourceProvider,
1567 slave.resourceProviders) {
1568 mesos::master::Response::GetAgents::Agent::ResourceProvider* provider =

Callers 2

createAgentAddedFunction · 0.85
foreachvalueFunction · 0.85

Calls 8

SecondsClass · 0.85
CopyFromMethod · 0.80
nsMethod · 0.80
durationMethod · 0.80
toRepeatedPtrFieldMethod · 0.80
isSomeMethod · 0.45
getMethod · 0.45
secsMethod · 0.45

Tested by

no test coverage detected