1<?php 2/* 3 * Copyright 2014 Google Inc. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not 6 * use this file except in compliance with the License. You may obtain a copy of 7 * the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 13 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 14 * License for the specific language governing permissions and limitations under 15 * the License. 16 */ 17 18namespace Google\Service\Compute; 19 20class Instance extends \Google\Collection 21{ 22 protected $collection_key = 'serviceAccounts'; 23 protected $advancedMachineFeaturesType = AdvancedMachineFeatures::class; 24 protected $advancedMachineFeaturesDataType = ''; 25 /** 26 * @var bool 27 */ 28 public $canIpForward; 29 protected $confidentialInstanceConfigType = ConfidentialInstanceConfig::class; 30 protected $confidentialInstanceConfigDataType = ''; 31 /** 32 * @var string 33 */ 34 public $cpuPlatform; 35 /** 36 * @var string 37 */ 38 public $creationTimestamp; 39 /** 40 * @var bool 41 */ 42 public $deletionProtection; 43 /** 44 * @var string 45 */ 46 public $description; 47 protected $disksType = AttachedDisk::class; 48 protected $disksDataType = 'array'; 49 protected $displayDeviceType = DisplayDevice::class; 50 protected $displayDeviceDataType = ''; 51 /** 52 * @var string 53 */ 54 public $fingerprint; 55 protected $guestAcceleratorsType = AcceleratorConfig::class; 56 protected $guestAcceleratorsDataType = 'array'; 57 /** 58 * @var string 59 */ 60 public $hostname; 61 /** 62 * @var string 63 */ 64 public $id; 65 /** 66 * @var string 67 */ 68 public $kind; 69 /** 70 * @var string 71 */ 72 public $labelFingerprint; 73 /** 74 * @var string[] 75 */ 76 public $labels; 77 /** 78 * @var string 79 */ 80 public $lastStartTimestamp; 81 /** 82 * @var string 83 */ 84 public $lastStopTimestamp; 85 /** 86 * @var string 87 */ 88 public $lastSuspendedTimestamp; 89 /** 90 * @var string 91 */ 92 public $machineType; 93 protected $metadataType = Metadata::class; 94 protected $metadataDataType = ''; 95 /** 96 * @var string 97 */ 98 public $minCpuPlatform; 99 /** 100 * @var string 101 */ 102 public $name; 103 protected $networkInterfacesType = NetworkInterface::class; 104 protected $networkInterfacesDataType = 'array'; 105 protected $networkPerformanceConfigType = NetworkPerformanceConfig::class; 106 protected $networkPerformanceConfigDataType = ''; 107 protected $paramsType = InstanceParams::class; 108 protected $paramsDataType = ''; 109 /** 110 * @var string 111 */ 112 public $privateIpv6GoogleAccess; 113 protected $reservationAffinityType = ReservationAffinity::class; 114 protected $reservationAffinityDataType = ''; 115 /** 116 * @var string[] 117 */ 118 public $resourcePolicies; 119 /** 120 * @var bool 121 */ 122 public $satisfiesPzs; 123 protected $schedulingType = Scheduling::class; 124 protected $schedulingDataType = ''; 125 /** 126 * @var string 127 */ 128 public $selfLink; 129 protected $serviceAccountsType = ServiceAccount::class; 130 protected $serviceAccountsDataType = 'array'; 131 protected $shieldedInstanceConfigType = ShieldedInstanceConfig::class; 132 protected $shieldedInstanceConfigDataType = ''; 133 protected $shieldedInstanceIntegrityPolicyType = ShieldedInstanceIntegrityPolicy::class; 134 protected $shieldedInstanceIntegrityPolicyDataType = ''; 135 /** 136 * @var string 137 */ 138 public $sourceMachineImage; 139 protected $sourceMachineImageEncryptionKeyType = CustomerEncryptionKey::class; 140 protected $sourceMachineImageEncryptionKeyDataType = ''; 141 /** 142 * @var bool 143 */ 144 public $startRestricted; 145 /** 146 * @var string 147 */ 148 public $status; 149 /** 150 * @var string 151 */ 152 public $statusMessage; 153 protected $tagsType = Tags::class; 154 protected $tagsDataType = ''; 155 /** 156 * @var string 157 */ 158 public $zone; 159 160 /** 161 * @param AdvancedMachineFeatures 162 */ 163 public function setAdvancedMachineFeatures(AdvancedMachineFeatures $advancedMachineFeatures) 164 { 165 $this->advancedMachineFeatures = $advancedMachineFeatures; 166 } 167 /** 168 * @return AdvancedMachineFeatures 169 */ 170 public function getAdvancedMachineFeatures() 171 { 172 return $this->advancedMachineFeatures; 173 } 174 /** 175 * @param bool 176 */ 177 public function setCanIpForward($canIpForward) 178 { 179 $this->canIpForward = $canIpForward; 180 } 181 /** 182 * @return bool 183 */ 184 public function getCanIpForward() 185 { 186 return $this->canIpForward; 187 } 188 /** 189 * @param ConfidentialInstanceConfig 190 */ 191 public function setConfidentialInstanceConfig(ConfidentialInstanceConfig $confidentialInstanceConfig) 192 { 193 $this->confidentialInstanceConfig = $confidentialInstanceConfig; 194 } 195 /** 196 * @return ConfidentialInstanceConfig 197 */ 198 public function getConfidentialInstanceConfig() 199 { 200 return $this->confidentialInstanceConfig; 201 } 202 /** 203 * @param string 204 */ 205 public function setCpuPlatform($cpuPlatform) 206 { 207 $this->cpuPlatform = $cpuPlatform; 208 } 209 /** 210 * @return string 211 */ 212 public function getCpuPlatform() 213 { 214 return $this->cpuPlatform; 215 } 216 /** 217 * @param string 218 */ 219 public function setCreationTimestamp($creationTimestamp) 220 { 221 $this->creationTimestamp = $creationTimestamp; 222 } 223 /** 224 * @return string 225 */ 226 public function getCreationTimestamp() 227 { 228 return $this->creationTimestamp; 229 } 230 /** 231 * @param bool 232 */ 233 public function setDeletionProtection($deletionProtection) 234 { 235 $this->deletionProtection = $deletionProtection; 236 } 237 /** 238 * @return bool 239 */ 240 public function getDeletionProtection() 241 { 242 return $this->deletionProtection; 243 } 244 /** 245 * @param string 246 */ 247 public function setDescription($description) 248 { 249 $this->description = $description; 250 } 251 /** 252 * @return string 253 */ 254 public function getDescription() 255 { 256 return $this->description; 257 } 258 /** 259 * @param AttachedDisk[] 260 */ 261 public function setDisks($disks) 262 { 263 $this->disks = $disks; 264 } 265 /** 266 * @return AttachedDisk[] 267 */ 268 public function getDisks() 269 { 270 return $this->disks; 271 } 272 /** 273 * @param DisplayDevice 274 */ 275 public function setDisplayDevice(DisplayDevice $displayDevice) 276 { 277 $this->displayDevice = $displayDevice; 278 } 279 /** 280 * @return DisplayDevice 281 */ 282 public function getDisplayDevice() 283 { 284 return $this->displayDevice; 285 } 286 /** 287 * @param string 288 */ 289 public function setFingerprint($fingerprint) 290 { 291 $this->fingerprint = $fingerprint; 292 } 293 /** 294 * @return string 295 */ 296 public function getFingerprint() 297 { 298 return $this->fingerprint; 299 } 300 /** 301 * @param AcceleratorConfig[] 302 */ 303 public function setGuestAccelerators($guestAccelerators) 304 { 305 $this->guestAccelerators = $guestAccelerators; 306 } 307 /** 308 * @return AcceleratorConfig[] 309 */ 310 public function getGuestAccelerators() 311 { 312 return $this->guestAccelerators; 313 } 314 /** 315 * @param string 316 */ 317 public function setHostname($hostname) 318 { 319 $this->hostname = $hostname; 320 } 321 /** 322 * @return string 323 */ 324 public function getHostname() 325 { 326 return $this->hostname; 327 } 328 /** 329 * @param string 330 */ 331 public function setId($id) 332 { 333 $this->id = $id; 334 } 335 /** 336 * @return string 337 */ 338 public function getId() 339 { 340 return $this->id; 341 } 342 /** 343 * @param string 344 */ 345 public function setKind($kind) 346 { 347 $this->kind = $kind; 348 } 349 /** 350 * @return string 351 */ 352 public function getKind() 353 { 354 return $this->kind; 355 } 356 /** 357 * @param string 358 */ 359 public function setLabelFingerprint($labelFingerprint) 360 { 361 $this->labelFingerprint = $labelFingerprint; 362 } 363 /** 364 * @return string 365 */ 366 public function getLabelFingerprint() 367 { 368 return $this->labelFingerprint; 369 } 370 /** 371 * @param string[] 372 */ 373 public function setLabels($labels) 374 { 375 $this->labels = $labels; 376 } 377 /** 378 * @return string[] 379 */ 380 public function getLabels() 381 { 382 return $this->labels; 383 } 384 /** 385 * @param string 386 */ 387 public function setLastStartTimestamp($lastStartTimestamp) 388 { 389 $this->lastStartTimestamp = $lastStartTimestamp; 390 } 391 /** 392 * @return string 393 */ 394 public function getLastStartTimestamp() 395 { 396 return $this->lastStartTimestamp; 397 } 398 /** 399 * @param string 400 */ 401 public function setLastStopTimestamp($lastStopTimestamp) 402 { 403 $this->lastStopTimestamp = $lastStopTimestamp; 404 } 405 /** 406 * @return string 407 */ 408 public function getLastStopTimestamp() 409 { 410 return $this->lastStopTimestamp; 411 } 412 /** 413 * @param string 414 */ 415 public function setLastSuspendedTimestamp($lastSuspendedTimestamp) 416 { 417 $this->lastSuspendedTimestamp = $lastSuspendedTimestamp; 418 } 419 /** 420 * @return string 421 */ 422 public function getLastSuspendedTimestamp() 423 { 424 return $this->lastSuspendedTimestamp; 425 } 426 /** 427 * @param string 428 */ 429 public function setMachineType($machineType) 430 { 431 $this->machineType = $machineType; 432 } 433 /** 434 * @return string 435 */ 436 public function getMachineType() 437 { 438 return $this->machineType; 439 } 440 /** 441 * @param Metadata 442 */ 443 public function setMetadata(Metadata $metadata) 444 { 445 $this->metadata = $metadata; 446 } 447 /** 448 * @return Metadata 449 */ 450 public function getMetadata() 451 { 452 return $this->metadata; 453 } 454 /** 455 * @param string 456 */ 457 public function setMinCpuPlatform($minCpuPlatform) 458 { 459 $this->minCpuPlatform = $minCpuPlatform; 460 } 461 /** 462 * @return string 463 */ 464 public function getMinCpuPlatform() 465 { 466 return $this->minCpuPlatform; 467 } 468 /** 469 * @param string 470 */ 471 public function setName($name) 472 { 473 $this->name = $name; 474 } 475 /** 476 * @return string 477 */ 478 public function getName() 479 { 480 return $this->name; 481 } 482 /** 483 * @param NetworkInterface[] 484 */ 485 public function setNetworkInterfaces($networkInterfaces) 486 { 487 $this->networkInterfaces = $networkInterfaces; 488 } 489 /** 490 * @return NetworkInterface[] 491 */ 492 public function getNetworkInterfaces() 493 { 494 return $this->networkInterfaces; 495 } 496 /** 497 * @param NetworkPerformanceConfig 498 */ 499 public function setNetworkPerformanceConfig(NetworkPerformanceConfig $networkPerformanceConfig) 500 { 501 $this->networkPerformanceConfig = $networkPerformanceConfig; 502 } 503 /** 504 * @return NetworkPerformanceConfig 505 */ 506 public function getNetworkPerformanceConfig() 507 { 508 return $this->networkPerformanceConfig; 509 } 510 /** 511 * @param InstanceParams 512 */ 513 public function setParams(InstanceParams $params) 514 { 515 $this->params = $params; 516 } 517 /** 518 * @return InstanceParams 519 */ 520 public function getParams() 521 { 522 return $this->params; 523 } 524 /** 525 * @param string 526 */ 527 public function setPrivateIpv6GoogleAccess($privateIpv6GoogleAccess) 528 { 529 $this->privateIpv6GoogleAccess = $privateIpv6GoogleAccess; 530 } 531 /** 532 * @return string 533 */ 534 public function getPrivateIpv6GoogleAccess() 535 { 536 return $this->privateIpv6GoogleAccess; 537 } 538 /** 539 * @param ReservationAffinity 540 */ 541 public function setReservationAffinity(ReservationAffinity $reservationAffinity) 542 { 543 $this->reservationAffinity = $reservationAffinity; 544 } 545 /** 546 * @return ReservationAffinity 547 */ 548 public function getReservationAffinity() 549 { 550 return $this->reservationAffinity; 551 } 552 /** 553 * @param string[] 554 */ 555 public function setResourcePolicies($resourcePolicies) 556 { 557 $this->resourcePolicies = $resourcePolicies; 558 } 559 /** 560 * @return string[] 561 */ 562 public function getResourcePolicies() 563 { 564 return $this->resourcePolicies; 565 } 566 /** 567 * @param bool 568 */ 569 public function setSatisfiesPzs($satisfiesPzs) 570 { 571 $this->satisfiesPzs = $satisfiesPzs; 572 } 573 /** 574 * @return bool 575 */ 576 public function getSatisfiesPzs() 577 { 578 return $this->satisfiesPzs; 579 } 580 /** 581 * @param Scheduling 582 */ 583 public function setScheduling(Scheduling $scheduling) 584 { 585 $this->scheduling = $scheduling; 586 } 587 /** 588 * @return Scheduling 589 */ 590 public function getScheduling() 591 { 592 return $this->scheduling; 593 } 594 /** 595 * @param string 596 */ 597 public function setSelfLink($selfLink) 598 { 599 $this->selfLink = $selfLink; 600 } 601 /** 602 * @return string 603 */ 604 public function getSelfLink() 605 { 606 return $this->selfLink; 607 } 608 /** 609 * @param ServiceAccount[] 610 */ 611 public function setServiceAccounts($serviceAccounts) 612 { 613 $this->serviceAccounts = $serviceAccounts; 614 } 615 /** 616 * @return ServiceAccount[] 617 */ 618 public function getServiceAccounts() 619 { 620 return $this->serviceAccounts; 621 } 622 /** 623 * @param ShieldedInstanceConfig 624 */ 625 public function setShieldedInstanceConfig(ShieldedInstanceConfig $shieldedInstanceConfig) 626 { 627 $this->shieldedInstanceConfig = $shieldedInstanceConfig; 628 } 629 /** 630 * @return ShieldedInstanceConfig 631 */ 632 public function getShieldedInstanceConfig() 633 { 634 return $this->shieldedInstanceConfig; 635 } 636 /** 637 * @param ShieldedInstanceIntegrityPolicy 638 */ 639 public function setShieldedInstanceIntegrityPolicy(ShieldedInstanceIntegrityPolicy $shieldedInstanceIntegrityPolicy) 640 { 641 $this->shieldedInstanceIntegrityPolicy = $shieldedInstanceIntegrityPolicy; 642 } 643 /** 644 * @return ShieldedInstanceIntegrityPolicy 645 */ 646 public function getShieldedInstanceIntegrityPolicy() 647 { 648 return $this->shieldedInstanceIntegrityPolicy; 649 } 650 /** 651 * @param string 652 */ 653 public function setSourceMachineImage($sourceMachineImage) 654 { 655 $this->sourceMachineImage = $sourceMachineImage; 656 } 657 /** 658 * @return string 659 */ 660 public function getSourceMachineImage() 661 { 662 return $this->sourceMachineImage; 663 } 664 /** 665 * @param CustomerEncryptionKey 666 */ 667 public function setSourceMachineImageEncryptionKey(CustomerEncryptionKey $sourceMachineImageEncryptionKey) 668 { 669 $this->sourceMachineImageEncryptionKey = $sourceMachineImageEncryptionKey; 670 } 671 /** 672 * @return CustomerEncryptionKey 673 */ 674 public function getSourceMachineImageEncryptionKey() 675 { 676 return $this->sourceMachineImageEncryptionKey; 677 } 678 /** 679 * @param bool 680 */ 681 public function setStartRestricted($startRestricted) 682 { 683 $this->startRestricted = $startRestricted; 684 } 685 /** 686 * @return bool 687 */ 688 public function getStartRestricted() 689 { 690 return $this->startRestricted; 691 } 692 /** 693 * @param string 694 */ 695 public function setStatus($status) 696 { 697 $this->status = $status; 698 } 699 /** 700 * @return string 701 */ 702 public function getStatus() 703 { 704 return $this->status; 705 } 706 /** 707 * @param string 708 */ 709 public function setStatusMessage($statusMessage) 710 { 711 $this->statusMessage = $statusMessage; 712 } 713 /** 714 * @return string 715 */ 716 public function getStatusMessage() 717 { 718 return $this->statusMessage; 719 } 720 /** 721 * @param Tags 722 */ 723 public function setTags(Tags $tags) 724 { 725 $this->tags = $tags; 726 } 727 /** 728 * @return Tags 729 */ 730 public function getTags() 731 { 732 return $this->tags; 733 } 734 /** 735 * @param string 736 */ 737 public function setZone($zone) 738 { 739 $this->zone = $zone; 740 } 741 /** 742 * @return string 743 */ 744 public function getZone() 745 { 746 return $this->zone; 747 } 748} 749 750// Adding a class alias for backwards compatibility with the previous class name. 751class_alias(Instance::class, 'Google_Service_Compute_Instance'); 752