# Class AbstractResource

Class that represents abstract functionality for Load Balancer resources

  OpenCloud\Common\Base
  OpenCloud\Common\Resource\BaseResource
  OpenCloud\Common\Resource\PersistentResource
  OpenCloud\LoadBalancer\Resource\AbstractResource

#### Direct known subclasses

OpenCloud\LoadBalancer\Resource\ConnectionLogging, OpenCloud\LoadBalancer\Resource\ContentCaching, OpenCloud\LoadBalancer\Resource\Metadata, OpenCloud\LoadBalancer\Resource\NonIdUriResource, OpenCloud\LoadBalancer\Resource\ReadOnlyResource

#### Indirect known subclasses

OpenCloud\LoadBalancer\Resource\Access, OpenCloud\LoadBalancer\Resource\Algorithm, OpenCloud\LoadBalancer\Resource\Stats, OpenCloud\LoadBalancer\Resource\UsageRecord, OpenCloud\LoadBalancer\Resource\VirtualIp, OpenCloud\LoadBalancer\Resource\AllowedDomain, OpenCloud\LoadBalancer\Resource\ConnectionThrottle, OpenCloud\LoadBalancer\Resource\ErrorPage, OpenCloud\LoadBalancer\Resource\HealthMonitor, OpenCloud\LoadBalancer\Resource\NodeEvent, OpenCloud\LoadBalancer\Resource\Protocol, OpenCloud\LoadBalancer\Resource\SessionPersistence, OpenCloud\LoadBalancer\Resource\SSLTermination
Abstract
Namespace: OpenCloud\LoadBalancer\Resource
Package: OpenCloud\LoadBalancer\Resource
Located at OpenCloud/LoadBalancer/Resource/AbstractResource.php

Methods summary
`public Guzzle\Http\Message\Response` | # `refresh( null $id = null, null $url = null )` Refresh the state of a resource Refresh the state of a resource #### Parameters $id `null` $id $url `null` $url #### Returns `Guzzle\Http\Message\Response` #### Throws `IdRequiredError` #### Overrides `OpenCloud\Common\Resource\PersistentResource::refresh()`
`protected` | # `refreshFromParent( )` Causes resource to refresh based on parent's URL Causes resource to refresh based on parent's URL
`protected object` | # `createJson( )` Provides JSON for create request body Provides JSON for create request body #### Returns `object` #### Throws ``RuntimeException`` #### Overrides `OpenCloud\Common\Resource\PersistentResource::createJson()`
`protected` | # `updateJson( mixed $params = array() )` Provides JSON for update request body Provides JSON for update request body #### Overrides `OpenCloud\Common\Resource\PersistentResource::updateJson()`

Methods inherited from OpenCloud\Common\Resource\PersistentResource
`checkExtension(), create(), delete(), getAlias(), noCreate(), noDelete(), noUpdate(), refreshFromLocationUrl(), update(), waitFor()`

Methods inherited from OpenCloud\Common\Resource\BaseResource
`__construct(), findLink(), getClient(), getMetadata(), getParent(), getService(), getUrl(), jsonCollectionElement(), jsonCollectionName(), jsonName(), parseResponse(), primaryKeyField(), resourceName(), setMetadata(), setParent(), setService()`

Methods inherited from OpenCloud\Common\Base
`__call(), checkJsonError(), generateUuid(), getInstance(), getJsonHeader(), getLogger(), getProperty(), makeResourceIteratorOptions(), populate(), propertyExists(), setLogger(), setProperty(), stripNamespace(), toCamel(), toUnderscores()`

Properties inherited from OpenCloud\Common\Resource\BaseResource
`$metadata, $parent, $service`

Properties inherited from OpenCloud\Common\Base
`$aliases`