FloatingIp
extends AbstractBillableCloudModel
in package
Uses
HasFactory, Notifiable, PowerJoins, SoftDeletes
Table of Contents
- table = "cloud_os_networking__floating_ips"
- Table name, as constant, used to avoid table name duplication across the source code base.
- $activityLogName : string
- $billable_directly : bool
- $billable_hourly : bool
- $billable_hourly_cost : float
- $billable_monthly : bool
- $billable_monthly_cost : float
- $billable_multiplier : float
- $billable_one_time : bool
- $billable_one_time_cost : float
- $billable_per_usage : bool
- $billable_per_usage_cost : float
- $billable_upon_relation : bool
- $billable_upon_relation_class : string
- $billable_upon_relation_fk : string
- $deleted_at : Carbon
- $error_at : Carbon
- $id : int
- $is_billable : bool
- $openStackActivityLogName : string
- $price_list_expires_at : int
- $attributes : array<string|int, mixed>
- Default attributes
- $casts : array<string|int, string>
- The attributes that should be casted
- $fillable : array<int, string>
- The attributes that are mass assignable.
- $table : string
- Table name
- _isBillable() : bool
- This function is used to determinate if a model is ready to be billed.
- _isBillableDirectly() : bool
- This function is used to determinate if a model is ready to be billed.
- belongsToDefaultDomain() : bool
- This function will return true if the model is under the default domain, false otherwise
- billingEntries() : MorphMany
- getActivitylogOptions() : LogOptions
- Specifies which model properties should be logged in the activy log
- getBillableOwnerModel() : Project
- getCustomerProduct() : CustomerProduct|null
- getInvoiceItemDescription() : string
- isOwner() : bool
- isReadyToInsert() : bool
- Check if the model is consistent to be updated.
- isReadyToUpdate() : bool
- Check if the model is consistent to be inserted and created
- network() : BelongsTo
- port() : BelongsTo
- priceList() : BelongsTo
- priceListEntity() : MorphOne
- project() : BelongsTo
- promotionsCustomers() : MorphMany
- retrieveDomain() : Domain|null
- router() : BelongsTo
- _getUsage() : float
- Called by the custom attribute `usage`. This function must be overwritten by the class that should implement how usage is calculated
- _isReadyToInsert() : bool
- Check if the model is consistent to be updated.
- _isReadyToUpdate() : bool
- Check if the model is consistent to be inserted and created
- billableHourly() : Attribute
- billableHourlyCost() : Attribute
- billableMonthly() : Attribute
- billableMonthlyCost() : Attribute
- billableMultiplier() : Attribute
- billableOneTime() : Attribute
- billableOneTimeCost() : Attribute
- billablePerUsage() : Attribute
- billablePerUsageCost() : Attribute
- billableUponRelation() : Attribute
- billableUponRelationClass() : Attribute
- billableUponRelationFk() : Attribute
- boot() : void
- Boot the model and register the events
- bootIsBillable() : void
- newFactory() : FloatingIpFactory
- Get the Factory Class
- usage() : Attribute
- `usage` custom attribute (only getter).
Constants
table
Table name, as constant, used to avoid table name duplication across the source code base.
public
mixed
table
= "cloud_os_networking__floating_ips"
Tags
Properties
$activityLogName
public
static string
$activityLogName
= "crud"
$billable_directly
public
bool
$billable_directly
$billable_hourly
public
bool
$billable_hourly
$billable_hourly_cost
public
float
$billable_hourly_cost
$billable_monthly
public
bool
$billable_monthly
$billable_monthly_cost
public
float
$billable_monthly_cost
$billable_multiplier
public
float
$billable_multiplier
$billable_one_time
public
bool
$billable_one_time
$billable_one_time_cost
public
float
$billable_one_time_cost
$billable_per_usage
public
bool
$billable_per_usage
$billable_per_usage_cost
public
float
$billable_per_usage_cost
$billable_upon_relation
public
bool
$billable_upon_relation
$billable_upon_relation_class
public
string
$billable_upon_relation_class
$billable_upon_relation_fk
public
string
$billable_upon_relation_fk
$deleted_at
public
Carbon
$deleted_at
$error_at
public
Carbon
$error_at
$id
public
int
$id
$is_billable
public
bool
$is_billable
$openStackActivityLogName
public
static string
$openStackActivityLogName
= 'openstack'
$price_list_expires_at
public
int
$price_list_expires_at
$attributes
Default attributes
protected
array<string|int, mixed>
$attributes
= ['is_billable' => false, 'billable_directly' => false, 'status' => \Athomos\Bennu\Modules\Cloud\OpenStack\Networking\Enums\FloatingIpStatus::Created]
$casts
The attributes that should be casted
protected
array<string|int, string>
$casts
= ['status' => \Athomos\Bennu\Modules\Cloud\OpenStack\Networking\Enums\FloatingIpStatus::class, 'is_billable' => 'boolean', 'billable_directly' => 'boolean']
$fillable
The attributes that are mass assignable.
protected
array<int, string>
$fillable
= ['name']
$table
Table name
protected
string
$table
= self::table
Methods
_isBillable()
This function is used to determinate if a model is ready to be billed.
public
_isBillable([bool|null $originIsBillable = null ]) : bool
Should be overwritten by models that needs a custom logic. If a model do not specialize this function the provided parameter will be returned, otherwise the attribute of the model. IMPORTANT!!! In the specialized version of this function always check the provided parameter, as in some cases a model may have been set on is_billable = false
Parameters
- $originIsBillable : bool|null = null
Return values
bool —_isBillableDirectly()
This function is used to determinate if a model is ready to be billed.
public
_isBillableDirectly([bool $originIsBillableDirectly = null ]) : bool
Should be overwritten by models that needs a custom logic. If a model do not specialize this function the provided parameter will be returned, otherwise the attribute of the model. IMPORTANT!!! In the specialized version of this function always check the provided parameter, as in some cases a model may have been set on is_billable = false
Parameters
- $originIsBillableDirectly : bool = null
Return values
bool —belongsToDefaultDomain()
This function will return true if the model is under the default domain, false otherwise
public
belongsToDefaultDomain() : bool
Tags
Return values
bool —billingEntries()
public
billingEntries() : MorphMany
Return values
MorphMany —getActivitylogOptions()
Specifies which model properties should be logged in the activy log
public
getActivitylogOptions() : LogOptions
Return values
LogOptions —getBillableOwnerModel()
public
getBillableOwnerModel() : Project
Return values
Project —getCustomerProduct()
public
getCustomerProduct() : CustomerProduct|null
Return values
CustomerProduct|null —getInvoiceItemDescription()
public
getInvoiceItemDescription([array<string|int, mixed> $changes = [] ]) : string
Parameters
- $changes : array<string|int, mixed> = []
Return values
string —isOwner()
public
isOwner(AuthUser $authUser) : bool
Parameters
- $authUser : AuthUser
Return values
bool —isReadyToInsert()
Check if the model is consistent to be updated.
public
isReadyToInsert() : bool
Tags
Return values
bool —true if the model is ready to be updated. The return type is just for convenience cause the method throws an exception
isReadyToUpdate()
Check if the model is consistent to be inserted and created
public
isReadyToUpdate() : bool
Tags
Return values
bool —true if the model is ready to be updated. The return type is just for convenience cause the method throws an exception
network()
public
network() : BelongsTo
Return values
BelongsTo —port()
public
port() : BelongsTo
Return values
BelongsTo —priceList()
public
priceList() : BelongsTo
Return values
BelongsTo —priceListEntity()
public
priceListEntity() : MorphOne
Return values
MorphOne —project()
public
project() : BelongsTo
Return values
BelongsTo —promotionsCustomers()
public
promotionsCustomers() : MorphMany
Return values
MorphMany —retrieveDomain()
public
retrieveDomain() : Domain|null
Tags
Return values
Domain|null —router()
public
router() : BelongsTo
Return values
BelongsTo —_getUsage()
Called by the custom attribute `usage`. This function must be overwritten by the class that should implement how usage is calculated
protected
_getUsage() : float
Return values
float —_isReadyToInsert()
Check if the model is consistent to be updated.
protected
_isReadyToInsert() : bool
Return values
bool —true if the model is ready to be updated. The return type is just for convenience cause the method throws an exception
_isReadyToUpdate()
Check if the model is consistent to be inserted and created
protected
_isReadyToUpdate() : bool
Tags
Return values
bool —true if the model is ready to be updated. The return type is just for convenience cause the method throws an exception
billableHourly()
protected
billableHourly() : Attribute
Return values
Attribute —billableHourlyCost()
protected
billableHourlyCost() : Attribute
Return values
Attribute —billableMonthly()
protected
billableMonthly() : Attribute
Return values
Attribute —billableMonthlyCost()
protected
billableMonthlyCost() : Attribute
Return values
Attribute —billableMultiplier()
protected
billableMultiplier() : Attribute
Return values
Attribute —billableOneTime()
protected
billableOneTime() : Attribute
Return values
Attribute —billableOneTimeCost()
protected
billableOneTimeCost() : Attribute
Return values
Attribute —billablePerUsage()
protected
billablePerUsage() : Attribute
Return values
Attribute —billablePerUsageCost()
protected
billablePerUsageCost() : Attribute
Return values
Attribute —billableUponRelation()
protected
billableUponRelation() : Attribute
Return values
Attribute —billableUponRelationClass()
protected
billableUponRelationClass() : Attribute
Return values
Attribute —billableUponRelationFk()
protected
billableUponRelationFk() : Attribute
Return values
Attribute —boot()
Boot the model and register the events
protected
static boot() : void
Return values
void —bootIsBillable()
protected
static bootIsBillable() : void
Tags
Return values
void —newFactory()
Get the Factory Class
protected
static newFactory() : FloatingIpFactory
Return values
FloatingIpFactory —usage()
`usage` custom attribute (only getter).
protected
usage() : Attribute
It returns the current usage of the entity for billable purpose.
Return values
Attribute —float Usage