canIpForward = $canIpForward; } /** * @return bool */ public function getCanIpForward() { return $this->canIpForward; } /** * Whether the instance created from this machine image should be protected * against deletion. * * @param bool $deletionProtection */ public function setDeletionProtection($deletionProtection) { $this->deletionProtection = $deletionProtection; } /** * @return bool */ public function getDeletionProtection() { return $this->deletionProtection; } /** * An optional text description for the instances that are created from this * machine image. * * @param string $description */ public function setDescription($description) { $this->description = $description; } /** * @return string */ public function getDescription() { return $this->description; } /** * An array of disks that are associated with the instances that are created * from this machine image. * * @param SavedAttachedDisk[] $disks */ public function setDisks($disks) { $this->disks = $disks; } /** * @return SavedAttachedDisk[] */ public function getDisks() { return $this->disks; } /** * A list of guest accelerator cards' type and count to use for instances * created from this machine image. * * @param AcceleratorConfig[] $guestAccelerators */ public function setGuestAccelerators($guestAccelerators) { $this->guestAccelerators = $guestAccelerators; } /** * @return AcceleratorConfig[] */ public function getGuestAccelerators() { return $this->guestAccelerators; } /** * KeyRevocationActionType of the instance. Supported options are "STOP" and * "NONE". The default value is "NONE" if it is not specified. * * Accepted values: KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED, NONE, STOP * * @param self::KEY_REVOCATION_ACTION_TYPE_* $keyRevocationActionType */ public function setKeyRevocationActionType($keyRevocationActionType) { $this->keyRevocationActionType = $keyRevocationActionType; } /** * @return self::KEY_REVOCATION_ACTION_TYPE_* */ public function getKeyRevocationActionType() { return $this->keyRevocationActionType; } /** * Labels to apply to instances that are created from this machine image. * * @param string[] $labels */ public function setLabels($labels) { $this->labels = $labels; } /** * @return string[] */ public function getLabels() { return $this->labels; } /** * The machine type to use for instances that are created from this machine * image. * * @param string $machineType */ public function setMachineType($machineType) { $this->machineType = $machineType; } /** * @return string */ public function getMachineType() { return $this->machineType; } /** * The metadata key/value pairs to assign to instances that are created from * this machine image. These pairs can consist of custom metadata or * predefined keys. SeeProject and instance metadata for more information. * * @param Metadata $metadata */ public function setMetadata(Metadata $metadata) { $this->metadata = $metadata; } /** * @return Metadata */ public function getMetadata() { return $this->metadata; } /** * Minimum cpu/platform to be used by instances created from this machine * image. The instance may be scheduled on the specified or newer * cpu/platform. Applicable values are the friendly names of CPU platforms, * such as minCpuPlatform: "Intel Haswell" orminCpuPlatform: "Intel Sandy * Bridge". For more information, read Specifying a Minimum CPU Platform. * * @param string $minCpuPlatform */ public function setMinCpuPlatform($minCpuPlatform) { $this->minCpuPlatform = $minCpuPlatform; } /** * @return string */ public function getMinCpuPlatform() { return $this->minCpuPlatform; } /** * An array of network access configurations for this interface. * * @param NetworkInterface[] $networkInterfaces */ public function setNetworkInterfaces($networkInterfaces) { $this->networkInterfaces = $networkInterfaces; } /** * @return NetworkInterface[] */ public function getNetworkInterfaces() { return $this->networkInterfaces; } /** * PostKeyRevocationActionType of the instance. * * Accepted values: NOOP, POST_KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED, * SHUTDOWN * * @param self::POST_KEY_REVOCATION_ACTION_TYPE_* $postKeyRevocationActionType */ public function setPostKeyRevocationActionType($postKeyRevocationActionType) { $this->postKeyRevocationActionType = $postKeyRevocationActionType; } /** * @return self::POST_KEY_REVOCATION_ACTION_TYPE_* */ public function getPostKeyRevocationActionType() { return $this->postKeyRevocationActionType; } /** * Specifies the scheduling options for the instances that are created from * this machine image. * * @param Scheduling $scheduling */ public function setScheduling(Scheduling $scheduling) { $this->scheduling = $scheduling; } /** * @return Scheduling */ public function getScheduling() { return $this->scheduling; } /** * A list of service accounts with specified scopes. Access tokens for these * service accounts are available to the instances that are created from this * machine image. Use metadata queries to obtain the access tokens for these * instances. * * @param ServiceAccount[] $serviceAccounts */ public function setServiceAccounts($serviceAccounts) { $this->serviceAccounts = $serviceAccounts; } /** * @return ServiceAccount[] */ public function getServiceAccounts() { return $this->serviceAccounts; } /** * A list of tags to apply to the instances that are created from this machine * image. The tags identify valid sources or targets for network firewalls. * The setTags method can modify this list of tags. Each tag within the list * must comply withRFC1035. * * @param Tags $tags */ public function setTags(Tags $tags) { $this->tags = $tags; } /** * @return Tags */ public function getTags() { return $this->tags; } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(SourceInstanceProperties::class, 'Google_Service_Compute_SourceInstanceProperties');