Overview

Namespaces

  • PHPixie
    • Auth
      • Context
        • Container
      • Domains
      • Providers
        • Builder
        • Provider
      • Repositories
        • Registry
        • Repository
    • AuthHTTP
      • Providers
    • AuthLogin
      • Providers
      • Repository
    • AuthORM
      • Repositories
        • Repository
        • Type
          • Login
    • AuthProcessors
      • Processor
    • BundleFramework
      • Configuration
        • FilesystemLocator
        • ORM
    • Bundles
      • Bundle
        • Provides
      • FilesystemLocators
      • Processors
    • Config
      • Formats
        • Format
      • Storages
        • Storage
          • Editable
        • Type
    • Database
      • Conditions
        • Builder
          • Container
          • Operators
        • Condition
          • Collection
          • Field
        • Logic
      • Connection
      • Driver
        • Mongo
          • Conditions
            • Builder
          • Parser
            • Conditions
          • Query
            • Type
        • PDO
          • Adapter
            • Mysql
              • Parser
            • Pgsql
              • Parser
            • Sqlite
              • Parser
          • Conditions
            • Builder
          • Query
            • Type
      • Exception
      • Parser
      • Query
        • Implementation
        • Type
          • Update
      • Type
        • Document
          • Conditions
            • Builder
            • Condition
              • Collection
                • Embedded
                  • Group
                  • Placeholder
          • Query
            • Implementation
        • SQL
          • Conditions
            • Builder
          • Parser
          • Query
            • Implementation
            • Type
      • Values
    • Debug
      • Logger
      • Tracer
        • Trace
    • DefaultBundle
      • Processor
        • HTTP
    • Filesystem
      • Locators
        • Locator
    • Framework
      • Extensions
        • Template
          • Extension
      • Processors
        • HTTP
          • Response
    • HTTP
      • Context
        • Container
        • Cookies
        • Session
      • Data
        • Headers
      • Messages
        • Message
          • Request
            • ServerRequest
        • Stream
        • UploadedFile
        • URI
      • Responses
    • HTTPProcessors
      • Parsers
        • Parser
      • Processor
        • Actions
        • Dispatcher
          • Builder
          • Registry
    • ORM
      • Conditions
        • Builder
        • Condition
          • Collection
            • RelatedTo
          • Field
          • In
      • Configs
      • Data
        • Diff
        • Type
        • Types
          • Document
            • Node
              • ArrayNode
      • Drivers
        • Driver
          • Mongo
          • PDO
          • SQL
      • Exception
      • Loaders
        • Loader
          • Embedded
          • Proxy
          • Repository
      • Mappers
        • Cascade
          • Mapper
        • Conditions
        • Preload
      • Maps
        • Map
          • Cascade
          • Property
      • Models
        • Model
          • Implementation
        • Type
          • Database
            • Implementation
          • Embedded
            • Implementation
      • Planners
        • Planner
          • In
            • Strategy
          • Pivot
            • Strategy
          • Query
            • Strategy
      • Plans
        • Plan
          • Query
      • Relationships
        • Relationship
          • Handler
            • Cascading
            • Mapping
          • Implementation
            • Preloader
              • Result
                • Multiple
            • Property
            • Side
          • Property
            • Entity
          • Side
            • Cascade
            • Property
          • Type
        • Type
          • Embeds
            • Preload
            • Property
            • Side
            • Type
              • Many
                • Preload
                • Property
                  • Entity
                • Side
              • One
                • Preload
                • Property
                  • Entity
                • Side
          • ManyToMany
            • Property
            • Side
          • OneTo
            • Preloader
            • Property
              • Entity
              • Query
            • Side
            • Type
              • Many
                • Preloader
                  • Property
                • Property
                  • Entity
                  • Query
                • Side
                • Value
                  • Preload
              • One
                • Preloader
                • Property
                • Side
      • Steps
        • Result
        • Step
          • Pivot
          • Query
            • Insert
              • Batch
                • Data
            • Result
          • Update
      • Values
        • Preload
          • Property
        • Update
      • Wrappers
        • Model
        • Type
          • Database
          • Embedded
    • Paginate
      • Loader
    • PaginateORM
      • Loader
    • Processors
      • Processor
        • Dispatcher
    • Route
      • Exception
      • Matcher
      • Resolvers
        • Resolver
          • Pattern
      • Translator
    • Security
      • Tokens
        • Storage
          • Database
    • Slice
      • Data
        • Slice
      • Type
        • ArrayData
        • Slice
    • Template
      • Extensions
        • Extension
      • Formats
      • Renderer
    • Test
  • Project
    • App
      • HTTPProcessors
    • Framework
  • Psr
    • Http
      • Message

Classes

  • PHPixie\Auth
  • PHPixie\Auth\Builder
  • PHPixie\Auth\Context
  • PHPixie\Auth\Context\Container\Implementation
  • PHPixie\Auth\Domains
  • PHPixie\Auth\Domains\Domain
  • PHPixie\Auth\Providers
  • PHPixie\Auth\Providers\Builder\Implementation
  • PHPixie\Auth\Providers\Provider\Implementation
  • PHPixie\Auth\Repositories
  • PHPixie\Auth\Repositories\Registry\Builder
  • PHPixie\AuthHTTP
  • PHPixie\AuthHTTP\Builder
  • PHPixie\AuthHTTP\Providers
  • PHPixie\AuthHTTP\Providers\Cookie
  • PHPixie\AuthHTTP\Providers\Session
  • PHPixie\AuthLogin
  • PHPixie\AuthLogin\Builder
  • PHPixie\AuthLogin\Providers
  • PHPixie\AuthLogin\Providers\Password
  • PHPixie\AuthORM\Repositories\Repository
  • PHPixie\AuthORM\Repositories\Repository\User
  • PHPixie\AuthORM\Repositories\Type\Login
  • PHPixie\AuthORM\Repositories\Type\Login\User
  • PHPixie\AuthProcessors
  • PHPixie\AuthProcessors\Builder
  • PHPixie\AuthProcessors\Processor\UpdateContext
  • PHPixie\BundleFramework
  • PHPixie\BundleFramework\Assets
  • PHPixie\BundleFramework\Builder
  • PHPixie\BundleFramework\Bundles
  • PHPixie\BundleFramework\Components
  • PHPixie\BundleFramework\Configuration
  • PHPixie\BundleFramework\Configuration\FilesystemLocator
  • PHPixie\BundleFramework\Configuration\FilesystemLocator\Template
  • PHPixie\BundleFramework\Configuration\ORM
  • PHPixie\BundleFramework\Configuration\ORM\Wrappers
  • PHPixie\Bundles
  • PHPixie\Bundles\Auth
  • PHPixie\Bundles\Builder
  • PHPixie\Bundles\FilesystemLocators
  • PHPixie\Bundles\FilesystemLocators\Template
  • PHPixie\Bundles\ORM
  • PHPixie\Bundles\Processors
  • PHPixie\Bundles\Processors\HTTP
  • PHPixie\Bundles\RouteResolvers
  • PHPixie\Config
  • PHPixie\Config\Builder
  • PHPixie\Config\Formats
  • PHPixie\Config\Formats\Format\JSON
  • PHPixie\Config\Formats\Format\PHP
  • PHPixie\Config\Storages
  • PHPixie\Config\Storages\Type\Directory
  • PHPixie\Config\Storages\Type\File
  • PHPixie\Database
  • PHPixie\Database\Conditions
  • PHPixie\Database\Conditions\Builder\Container
  • PHPixie\Database\Conditions\Builder\Container\Conditions
  • PHPixie\Database\Conditions\Condition\Collection\Group
  • PHPixie\Database\Conditions\Condition\Collection\Placeholder
  • PHPixie\Database\Conditions\Condition\Field\Implementation
  • PHPixie\Database\Conditions\Condition\Field\Operator
  • PHPixie\Database\Conditions\Condition\Implementation
  • PHPixie\Database\Conditions\Logic\Parser
  • PHPixie\Database\Connection
  • PHPixie\Database\Connection\Transactable
  • PHPixie\Database\Driver
  • PHPixie\Database\Driver\Mongo
  • PHPixie\Database\Driver\Mongo\Conditions
  • PHPixie\Database\Driver\Mongo\Conditions\Builder\Container
  • PHPixie\Database\Driver\Mongo\Connection
  • PHPixie\Database\Driver\Mongo\Parser
  • PHPixie\Database\Driver\Mongo\Parser\Conditions
  • PHPixie\Database\Driver\Mongo\Parser\Conditions\ExpandedGroup
  • PHPixie\Database\Driver\Mongo\Parser\Operator
  • PHPixie\Database\Driver\Mongo\Query
  • PHPixie\Database\Driver\Mongo\Query\Builder
  • PHPixie\Database\Driver\Mongo\Query\Item
  • PHPixie\Database\Driver\Mongo\Query\Items
  • PHPixie\Database\Driver\Mongo\Query\Runner
  • PHPixie\Database\Driver\Mongo\Query\Type\Count
  • PHPixie\Database\Driver\Mongo\Query\Type\Delete
  • PHPixie\Database\Driver\Mongo\Query\Type\Insert
  • PHPixie\Database\Driver\Mongo\Query\Type\Select
  • PHPixie\Database\Driver\Mongo\Query\Type\SelectSingle
  • PHPixie\Database\Driver\Mongo\Query\Type\Update
  • PHPixie\Database\Driver\Mongo\Result
  • PHPixie\Database\Driver\PDO
  • PHPixie\Database\Driver\PDO\Adapter
  • PHPixie\Database\Driver\PDO\Adapter\Mysql
  • PHPixie\Database\Driver\PDO\Adapter\Mysql\Parser
  • PHPixie\Database\Driver\PDO\Adapter\Mysql\Parser\Conditions
  • PHPixie\Database\Driver\PDO\Adapter\Mysql\Parser\Fragment
  • PHPixie\Database\Driver\PDO\Adapter\Mysql\Parser\Operator
  • PHPixie\Database\Driver\PDO\Adapter\Pgsql
  • PHPixie\Database\Driver\PDO\Adapter\Pgsql\Parser
  • PHPixie\Database\Driver\PDO\Adapter\Pgsql\Parser\Conditions
  • PHPixie\Database\Driver\PDO\Adapter\Pgsql\Parser\Fragment
  • PHPixie\Database\Driver\PDO\Adapter\Pgsql\Parser\Operator
  • PHPixie\Database\Driver\PDO\Adapter\Sqlite
  • PHPixie\Database\Driver\PDO\Adapter\Sqlite\Parser
  • PHPixie\Database\Driver\PDO\Adapter\Sqlite\Parser\Conditions
  • PHPixie\Database\Driver\PDO\Adapter\Sqlite\Parser\Fragment
  • PHPixie\Database\Driver\PDO\Adapter\Sqlite\Parser\Operator
  • PHPixie\Database\Driver\PDO\Conditions
  • PHPixie\Database\Driver\PDO\Conditions\Builder\Container
  • PHPixie\Database\Driver\PDO\Connection
  • PHPixie\Database\Driver\PDO\Query
  • PHPixie\Database\Driver\PDO\Query\Builder
  • PHPixie\Database\Driver\PDO\Query\Items
  • PHPixie\Database\Driver\PDO\Query\Type\Count
  • PHPixie\Database\Driver\PDO\Query\Type\Delete
  • PHPixie\Database\Driver\PDO\Query\Type\Insert
  • PHPixie\Database\Driver\PDO\Query\Type\Select
  • PHPixie\Database\Driver\PDO\Query\Type\Update
  • PHPixie\Database\Driver\PDO\Result
  • PHPixie\Database\Parser
  • PHPixie\Database\Parser\Operator
  • PHPixie\Database\Query\Implementation
  • PHPixie\Database\Query\Implementation\Builder
  • PHPixie\Database\Result
  • PHPixie\Database\Type\Document\Conditions
  • PHPixie\Database\Type\Document\Conditions\Builder\Container
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Embedded\Group
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Embedded\Group\SubarrayItem
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Embedded\Group\Subdocument
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Embedded\Placeholder
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Embedded\Placeholder\SubarrayItem
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Embedded\Placeholder\Subdocument
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Placeholder
  • PHPixie\Database\Type\Document\Query\Implementation\Builder
  • PHPixie\Database\Type\SQL
  • PHPixie\Database\Type\SQL\Conditions
  • PHPixie\Database\Type\SQL\Conditions\Builder\Container
  • PHPixie\Database\Type\SQL\Connection
  • PHPixie\Database\Type\SQL\Driver
  • PHPixie\Database\Type\SQL\Expression
  • PHPixie\Database\Type\SQL\Parser
  • PHPixie\Database\Type\SQL\Parser\Conditions
  • PHPixie\Database\Type\SQL\Parser\Fragment
  • PHPixie\Database\Type\SQL\Parser\Operator
  • PHPixie\Database\Type\SQL\Query\Implementation
  • PHPixie\Database\Type\SQL\Query\Implementation\Builder
  • PHPixie\Database\Values
  • PHPixie\Database\Values\OrderBy
  • PHPixie\Debug
  • PHPixie\Debug\Builder
  • PHPixie\Debug\Dumper
  • PHPixie\Debug\Handlers
  • PHPixie\Debug\Logger
  • PHPixie\Debug\Logger\Item
  • PHPixie\Debug\Messages
  • PHPixie\Debug\Tracer
  • PHPixie\Debug\Tracer\Trace
  • PHPixie\Debug\Tracer\Trace\Element
  • PHPixie\DefaultBundle
  • PHPixie\DefaultBundle\Builder
  • PHPixie\DefaultBundle\Processor\HTTP\Actions
  • PHPixie\DefaultBundle\Processor\HTTP\Builder
  • PHPixie\Filesystem
  • PHPixie\Filesystem\Builder
  • PHPixie\Filesystem\Locators
  • PHPixie\Filesystem\Locators\Builder
  • PHPixie\Filesystem\Locators\Locator\Directory
  • PHPixie\Filesystem\Locators\Locator\Group
  • PHPixie\Filesystem\Locators\Locator\Mount
  • PHPixie\Filesystem\Locators\Locator\Prefix
  • PHPixie\Filesystem\Root
  • PHPixie\Framework
  • PHPixie\Framework\Assets
  • PHPixie\Framework\Builder
  • PHPixie\Framework\Components
  • PHPixie\Framework\Context
  • PHPixie\Framework\Extensions
  • PHPixie\Framework\Extensions\Template\Extension\Debug
  • PHPixie\Framework\Extensions\Template\Extension\RouteTranslator
  • PHPixie\Framework\HTTP
  • PHPixie\Framework\Processors
  • PHPixie\Framework\Processors\HTTP\ParseRoute
  • PHPixie\Framework\Processors\HTTP\Response\Exception
  • PHPixie\Framework\Processors\HTTP\Response\Normalize
  • PHPixie\Framework\Processors\HTTP\Response\NotFound
  • PHPixie\HTTP
  • PHPixie\HTTP\Builder
  • PHPixie\HTTP\Context
  • PHPixie\HTTP\Context\Container\Implementation
  • PHPixie\HTTP\Context\Cookies
  • PHPixie\HTTP\Context\Cookies\Update
  • PHPixie\HTTP\Context\Session\SAPI
  • PHPixie\HTTP\Data\Headers
  • PHPixie\HTTP\Data\Headers\Editable
  • PHPixie\HTTP\Data\Server
  • PHPixie\HTTP\Messages
  • PHPixie\HTTP\Messages\Message
  • PHPixie\HTTP\Messages\Message\Implementation
  • PHPixie\HTTP\Messages\Message\Request
  • PHPixie\HTTP\Messages\Message\Request\Implementation
  • PHPixie\HTTP\Messages\Message\Request\ServerRequest
  • PHPixie\HTTP\Messages\Message\Request\ServerRequest\Implementation
  • PHPixie\HTTP\Messages\Message\Request\ServerRequest\SAPI
  • PHPixie\HTTP\Messages\Message\Response
  • PHPixie\HTTP\Messages\Stream\Implementation
  • PHPixie\HTTP\Messages\Stream\StringStream
  • PHPixie\HTTP\Messages\UploadedFile
  • PHPixie\HTTP\Messages\UploadedFile\Implementation
  • PHPixie\HTTP\Messages\UploadedFile\SAPI
  • PHPixie\HTTP\Messages\URI
  • PHPixie\HTTP\Messages\URI\Implementation
  • PHPixie\HTTP\Messages\URI\SAPI
  • PHPixie\HTTP\Output
  • PHPixie\HTTP\Request
  • PHPixie\HTTP\Responses
  • PHPixie\HTTP\Responses\Response
  • PHPixie\HTTPProcessors
  • PHPixie\HTTPProcessors\Builder
  • PHPixie\HTTPProcessors\Parsers
  • PHPixie\HTTPProcessors\Parsers\Parser\JSON
  • PHPixie\HTTPProcessors\Processor\Actions\Attribute
  • PHPixie\HTTPProcessors\Processor\BuildRequest
  • PHPixie\HTTPProcessors\Processor\Dispatcher\Builder\Attribute
  • PHPixie\HTTPProcessors\Processor\Dispatcher\Registry\Attribute
  • PHPixie\HTTPProcessors\Processor\ParseBody
  • PHPixie\HTTPProcessors\Processor\UpdateContext
  • PHPixie\ORM
  • PHPixie\ORM\Builder
  • PHPixie\ORM\Conditions
  • PHPixie\ORM\Conditions\Builder\Container
  • PHPixie\ORM\Conditions\Builder\Proxy
  • PHPixie\ORM\Conditions\Condition\Collection\Group
  • PHPixie\ORM\Conditions\Condition\Collection\Placeholder
  • PHPixie\ORM\Conditions\Condition\Collection\RelatedTo\Group
  • PHPixie\ORM\Conditions\Condition\Field\Operator
  • PHPixie\ORM\Conditions\Condition\Field\Subquery
  • PHPixie\ORM\Conditions\Condition\Implementation
  • PHPixie\ORM\Conditions\Condition\In
  • PHPixie\ORM\Configs
  • PHPixie\ORM\Configs\Config
  • PHPixie\ORM\Configs\Inflector
  • PHPixie\ORM\Data
  • PHPixie\ORM\Data\Diff
  • PHPixie\ORM\Data\Diff\Removing
  • PHPixie\ORM\Data\Type\Implementation
  • PHPixie\ORM\Data\Types\Document
  • PHPixie\ORM\Data\Types\Document\Builder
  • PHPixie\ORM\Data\Types\Document\Diffable
  • PHPixie\ORM\Data\Types\Document\Node
  • PHPixie\ORM\Data\Types\Document\Node\ArrayNode
  • PHPixie\ORM\Data\Types\Document\Node\ArrayNode\Iterator
  • PHPixie\ORM\Data\Types\Document\Node\Document
  • PHPixie\ORM\Data\Types\Map
  • PHPixie\ORM\Database
  • PHPixie\ORM\Drivers
  • PHPixie\ORM\Drivers\Driver
  • PHPixie\ORM\Drivers\Driver\Mongo
  • PHPixie\ORM\Drivers\Driver\Mongo\Config
  • PHPixie\ORM\Drivers\Driver\Mongo\Entity
  • PHPixie\ORM\Drivers\Driver\Mongo\Query
  • PHPixie\ORM\Drivers\Driver\Mongo\Repository
  • PHPixie\ORM\Drivers\Driver\PDO
  • PHPixie\ORM\Drivers\Driver\PDO\Config
  • PHPixie\ORM\Drivers\Driver\PDO\Entity
  • PHPixie\ORM\Drivers\Driver\PDO\Query
  • PHPixie\ORM\Drivers\Driver\PDO\Repository
  • PHPixie\ORM\Drivers\Driver\SQL\Config
  • PHPixie\ORM\Drivers\Driver\SQL\Entity
  • PHPixie\ORM\Drivers\Driver\SQL\Query
  • PHPixie\ORM\Drivers\Driver\SQL\Repository
  • PHPixie\ORM\Loaders
  • PHPixie\ORM\Loaders\Iterator
  • PHPixie\ORM\Loaders\Loader
  • PHPixie\ORM\Loaders\Loader\Embedded
  • PHPixie\ORM\Loaders\Loader\Embedded\ArrayNode
  • PHPixie\ORM\Loaders\Loader\MultiplePreloader
  • PHPixie\ORM\Loaders\Loader\Proxy
  • PHPixie\ORM\Loaders\Loader\Proxy\Caching
  • PHPixie\ORM\Loaders\Loader\Proxy\Editable
  • PHPixie\ORM\Loaders\Loader\Proxy\Preloading
  • PHPixie\ORM\Loaders\Loader\Repository
  • PHPixie\ORM\Loaders\Loader\Repository\DataIterator
  • PHPixie\ORM\Loaders\Loader\Repository\ReusableResult
  • PHPixie\ORM\Mappers
  • PHPixie\ORM\Mappers\Cascade\Mapper
  • PHPixie\ORM\Mappers\Cascade\Mapper\Delete
  • PHPixie\ORM\Mappers\Cascade\Path
  • PHPixie\ORM\Mappers\Conditions
  • PHPixie\ORM\Mappers\Conditions\Normalizer
  • PHPixie\ORM\Mappers\Conditions\Optimizer
  • PHPixie\ORM\Mappers\Preload
  • PHPixie\ORM\Mappers\Query
  • PHPixie\ORM\Mappers\Update
  • PHPixie\ORM\Maps
  • PHPixie\ORM\Maps\Map
  • PHPixie\ORM\Maps\Map\Cascade
  • PHPixie\ORM\Maps\Map\Cascade\Delete
  • PHPixie\ORM\Maps\Map\Preload
  • PHPixie\ORM\Maps\Map\Property
  • PHPixie\ORM\Maps\Map\Property\Entity
  • PHPixie\ORM\Maps\Map\Property\Query
  • PHPixie\ORM\Maps\Map\Relationship
  • PHPixie\ORM\Models
  • PHPixie\ORM\Models\Model
  • PHPixie\ORM\Models\Model\Config
  • PHPixie\ORM\Models\Model\Implementation\Entity
  • PHPixie\ORM\Models\Type\Database
  • PHPixie\ORM\Models\Type\Database\Config
  • PHPixie\ORM\Models\Type\Database\Implementation\Entity
  • PHPixie\ORM\Models\Type\Database\Implementation\Query
  • PHPixie\ORM\Models\Type\Database\Implementation\Repository
  • PHPixie\ORM\Models\Type\Embedded
  • PHPixie\ORM\Models\Type\Embedded\Config
  • PHPixie\ORM\Models\Type\Embedded\Implementation\Entity
  • PHPixie\ORM\Planners
  • PHPixie\ORM\Planners\Planner
  • PHPixie\ORM\Planners\Planner\Document
  • PHPixie\ORM\Planners\Planner\In
  • PHPixie\ORM\Planners\Planner\In\Strategy
  • PHPixie\ORM\Planners\Planner\In\Strategy\Multiquery
  • PHPixie\ORM\Planners\Planner\In\Strategy\Subquery
  • PHPixie\ORM\Planners\Planner\Pivot
  • PHPixie\ORM\Planners\Planner\Pivot\Pivot
  • PHPixie\ORM\Planners\Planner\Pivot\Side
  • PHPixie\ORM\Planners\Planner\Pivot\Strategy
  • PHPixie\ORM\Planners\Planner\Pivot\Strategy\Multiquery
  • PHPixie\ORM\Planners\Planner\Pivot\Strategy\SQL
  • PHPixie\ORM\Planners\Planner\Query
  • PHPixie\ORM\Planners\Planner\Query\Strategy
  • PHPixie\ORM\Planners\Planner\Query\Strategy\Mongo
  • PHPixie\ORM\Planners\Planner\Query\Strategy\SQL
  • PHPixie\ORM\Planners\Planner\Update
  • PHPixie\ORM\Plans
  • PHPixie\ORM\Plans\Plan
  • PHPixie\ORM\Plans\Plan\Query
  • PHPixie\ORM\Plans\Plan\Query\Count
  • PHPixie\ORM\Plans\Plan\Query\Loader
  • PHPixie\ORM\Plans\Plan\Steps
  • PHPixie\ORM\Plans\Transaction
  • PHPixie\ORM\Relationships
  • PHPixie\ORM\Relationships\Relationship\Implementation
  • PHPixie\ORM\Relationships\Relationship\Implementation\Handler
  • PHPixie\ORM\Relationships\Relationship\Implementation\Preloader
  • PHPixie\ORM\Relationships\Relationship\Implementation\Preloader\Result
  • PHPixie\ORM\Relationships\Relationship\Implementation\Preloader\Result\Multiple
  • PHPixie\ORM\Relationships\Relationship\Implementation\Preloader\Result\Multiple\IdMap
  • PHPixie\ORM\Relationships\Relationship\Implementation\Preloader\Result\Single
  • PHPixie\ORM\Relationships\Relationship\Implementation\Property
  • PHPixie\ORM\Relationships\Relationship\Implementation\Property\Entity
  • PHPixie\ORM\Relationships\Relationship\Implementation\Property\Query
  • PHPixie\ORM\Relationships\Relationship\Implementation\Side
  • PHPixie\ORM\Relationships\Relationship\Implementation\Side\Config
  • PHPixie\ORM\Relationships\Type\Embeds
  • PHPixie\ORM\Relationships\Type\Embeds\Handler
  • PHPixie\ORM\Relationships\Type\Embeds\Preload\Result
  • PHPixie\ORM\Relationships\Type\Embeds\Preloader
  • PHPixie\ORM\Relationships\Type\Embeds\Property\Entity
  • PHPixie\ORM\Relationships\Type\Embeds\Side
  • PHPixie\ORM\Relationships\Type\Embeds\Side\Config
  • PHPixie\ORM\Relationships\Type\Embeds\Type\Many
  • PHPixie\ORM\Relationships\Type\Embeds\Type\Many\Handler
  • PHPixie\ORM\Relationships\Type\Embeds\Type\MAny\Preload\Result
  • PHPixie\ORM\Relationships\Type\Embeds\Type\Many\Preloader
  • PHPixie\ORM\Relationships\Type\Embeds\Type\Many\Property\Entity\Items
  • PHPixie\ORM\Relationships\Type\Embeds\Type\Many\Side
  • PHPixie\ORM\Relationships\Type\Embeds\Type\Many\Side\Config
  • PHPixie\ORM\Relationships\Type\Embeds\Type\One
  • PHPixie\ORM\Relationships\Type\Embeds\Type\One\Handler
  • PHPixie\ORM\Relationships\Type\Embeds\Type\One\Preload\Result
  • PHPixie\ORM\Relationships\Type\Embeds\Type\One\Preloader
  • PHPixie\ORM\Relationships\Type\Embeds\Type\One\Property\Entity\Item
  • PHPixie\ORM\Relationships\Type\Embeds\Type\One\Side
  • PHPixie\ORM\Relationships\Type\Embeds\Type\One\Side\Config
  • PHPixie\ORM\Relationships\Type\ManyToMany
  • PHPixie\ORM\Relationships\Type\ManyToMany\Handler
  • PHPixie\ORM\Relationships\Type\ManyToMany\Preloader
  • PHPixie\ORM\Relationships\Type\ManyToMany\Property\Entity
  • PHPixie\ORM\Relationships\Type\ManyToMany\Property\Query
  • PHPixie\ORM\Relationships\Type\ManyToMany\Side
  • PHPixie\ORM\Relationships\Type\ManyToMany\Side\Config
  • PHPixie\ORM\Relationships\Type\OneTo
  • PHPixie\ORM\Relationships\Type\OneTo\Handler
  • PHPixie\ORM\Relationships\Type\OneTo\Preloader\Owner
  • PHPixie\ORM\Relationships\Type\OneTo\Property\Entity
  • PHPixie\ORM\Relationships\Type\OneTo\Property\Entity\Single
  • PHPixie\ORM\Relationships\Type\OneTo\Property\Query
  • PHPixie\ORM\Relationships\Type\OneTo\Property\Query\Single
  • PHPixie\ORM\Relationships\Type\OneTo\Side
  • PHPixie\ORM\Relationships\Type\OneTo\Side\Config
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Handler
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Preloader\Items
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Preloader\Owner
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Preloader\Property\Owner
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Property\Entity\Items
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Property\Entity\Owner
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Property\Query\Items
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Property\Query\Owner
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Side
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Side\Config
  • PHPixie\ORM\Relationships\Type\OneTo\Type\Many\Value\Preload\Owner
  • PHPixie\ORM\Relationships\Type\OneTo\Type\One
  • PHPixie\ORM\Relationships\Type\OneTo\Type\One\Handler
  • PHPixie\ORM\Relationships\Type\OneTo\Type\One\Preloader\Item
  • PHPixie\ORM\Relationships\Type\OneTo\Type\One\Preloader\Owner
  • PHPixie\ORM\Relationships\Type\OneTo\Type\One\Property\Entity
  • PHPixie\ORM\Relationships\Type\OneTo\Type\One\Property\Query
  • PHPixie\ORM\Relationships\Type\OneTo\Type\One\Side
  • PHPixie\ORM\Relationships\Type\OneTo\Type\One\Side\Config
  • PHPixie\ORM\Repositories
  • PHPixie\ORM\Steps
  • PHPixie\ORM\Steps\Result\Filter
  • PHPixie\ORM\Steps\Step
  • PHPixie\ORM\Steps\Step\In
  • PHPixie\ORM\Steps\Step\Pivot\Cartesian
  • PHPixie\ORM\Steps\Step\Query
  • PHPixie\ORM\Steps\Step\Query\Count
  • PHPixie\ORM\Steps\Step\Query\Insert
  • PHPixie\ORM\Steps\Step\Query\Insert\Batch
  • PHPixie\ORM\Steps\Step\Query\Insert\Batch\Data
  • PHPixie\ORM\Steps\Step\Query\Insert\Batch\Data\Unique
  • PHPixie\ORM\Steps\Step\Query\Result
  • PHPixie\ORM\Steps\Step\Query\Result\Iterator
  • PHPixie\ORM\Steps\Step\Query\Result\Reusable
  • PHPixie\ORM\Steps\Step\Update
  • PHPixie\ORM\Steps\Step\Update\Map
  • PHPixie\ORM\Values
  • PHPixie\ORM\Values\OrderBy
  • PHPixie\ORM\Values\Preload
  • PHPixie\ORM\Values\Preload\Property
  • PHPixie\ORM\Values\Preload\Property\Cascading
  • PHPixie\ORM\Values\Update
  • PHPixie\ORM\Values\Update\Builder
  • PHPixie\ORM\Values\Update\Increment
  • PHPixie\ORM\Values\Update\Remove
  • PHPixie\ORM\Wrappers\Implementation
  • PHPixie\ORM\Wrappers\Model\Entity
  • PHPixie\ORM\Wrappers\Type\Database\Entity
  • PHPixie\ORM\Wrappers\Type\Database\Query
  • PHPixie\ORM\Wrappers\Type\Database\Repository
  • PHPixie\ORM\Wrappers\Type\Embedded\Entity
  • PHPixie\Paginate
  • PHPixie\Paginate\Builder
  • PHPixie\Paginate\Loader\ArrayAccess
  • PHPixie\Paginate\Pager
  • PHPixie\PaginateORM
  • PHPixie\PaginateORM\Builder
  • PHPixie\PaginateORM\Loader\Query
  • PHPixie\Processors
  • PHPixie\Processors\Processor\Actions
  • PHPixie\Processors\Processor\CatchException
  • PHPixie\Processors\Processor\Chain
  • PHPixie\Processors\Processor\CheckIsProcessable
  • PHPixie\Processors\Processor\Dispatcher
  • PHPixie\Processors\Processor\Dispatcher\Builder
  • PHPixie\Processors\Processor\Dispatcher\Registry
  • PHPixie\Route
  • PHPixie\Route\Builder
  • PHPixie\Route\Matcher
  • PHPixie\Route\Matcher\Pattern
  • PHPixie\Route\Resolvers
  • PHPixie\Route\Resolvers\Builder
  • PHPixie\Route\Resolvers\Resolver\Group
  • PHPixie\Route\Resolvers\Resolver\Mount
  • PHPixie\Route\Resolvers\Resolver\Pattern
  • PHPixie\Route\Resolvers\Resolver\Pattern\Implementation
  • PHPixie\Route\Resolvers\Resolver\Pattern\Prefix
  • PHPixie\Route\Translator
  • PHPixie\Route\Translator\Fragment
  • PHPixie\Route\Translator\Match
  • PHPixie\Route\Translator\Target
  • PHPixie\Security
  • PHPixie\Security\Builder
  • PHPixie\Security\Password
  • PHPixie\Security\Random
  • PHPixie\Security\Tokens
  • PHPixie\Security\Tokens\Handler
  • PHPixie\Security\Tokens\Storage\Database
  • PHPixie\Security\Tokens\Storage\Database\Mongo
  • PHPixie\Security\Tokens\Storage\Database\SQL
  • PHPixie\Security\Tokens\Token
  • PHPixie\Slice
  • PHPixie\Slice\Data\Implementation
  • PHPixie\Slice\Iterator
  • PHPixie\Slice\Type\ArrayData
  • PHPixie\Slice\Type\ArrayData\Editable
  • PHPixie\Slice\Type\ArrayData\Slice
  • PHPixie\Slice\Type\Slice
  • PHPixie\Slice\Type\Slice\Editable
  • PHPixie\Template
  • PHPixie\Template\Builder
  • PHPixie\Template\Compiler
  • PHPixie\Template\Container
  • PHPixie\Template\Extensions
  • PHPixie\Template\Extensions\Extension\HTML
  • PHPixie\Template\Formats
  • PHPixie\Template\Renderer
  • PHPixie\Template\Renderer\Context
  • PHPixie\Template\Renderer\Runtime
  • PHPixie\Template\Resolver
  • PHPixie\Test\Testcase
  • Project\App
  • Project\App\Builder
  • Project\App\HTTPProcessor
  • Project\App\HTTPProcessors\Greet
  • Project\App\ORMWrappers
  • Project\Framework
  • Project\Framework\Builder
  • Project\Framework\Bundles
  • Project\Framework\Extensions

Interfaces

  • PHPixie\Auth\Context\Container
  • PHPixie\Auth\Context\Container\Settable
  • PHPixie\Auth\Providers\Builder
  • PHPixie\Auth\Providers\Provider
  • PHPixie\Auth\Providers\Provider\Autologin
  • PHPixie\Auth\Providers\Provider\Persistent
  • PHPixie\Auth\Repositories\Registry
  • PHPixie\Auth\Repositories\Repository
  • PHPixie\Auth\Repositories\Repository\User
  • PHPixie\AuthLogin\Repository
  • PHPixie\AuthLogin\Repository\User
  • PHPixie\Bundles\Bundle
  • PHPixie\Bundles\Bundle\Provides\Auth
  • PHPixie\Bundles\Bundle\Provides\HTTPProcessor
  • PHPixie\Bundles\Bundle\Provides\ORM
  • PHPixie\Bundles\Bundle\Provides\RouteResolver
  • PHPixie\Bundles\Bundle\Provides\TemplateLocator
  • PHPixie\Bundles\Bundle\Provides\WebRoot
  • PHPixie\Bundles\Registry
  • PHPixie\Config\Formats\Format
  • PHPixie\Config\Storages\Storage
  • PHPixie\Config\Storages\Storage\Editable
  • PHPixie\Config\Storages\Storage\Editable\Persistable
  • PHPixie\Database\Conditions\Builder
  • PHPixie\Database\Conditions\Builder\Operators\In
  • PHPixie\Database\Conditions\Condition
  • PHPixie\Database\Conditions\Condition\Collection
  • PHPixie\Database\Conditions\Condition\Field
  • PHPixie\Database\Driver\Mongo\Conditions\Builder
  • PHPixie\Database\Driver\PDO\Conditions\Builder
  • PHPixie\Database\Query
  • PHPixie\Database\Query\Items
  • PHPixie\Database\Query\Type\Count
  • PHPixie\Database\Query\Type\Delete
  • PHPixie\Database\Query\Type\Insert
  • PHPixie\Database\Query\Type\Select
  • PHPixie\Database\Query\Type\Update
  • PHPixie\Database\Query\Type\Update\Incrementable
  • PHPixie\Database\Query\Type\Update\Unsetable
  • PHPixie\Database\Type\Document\Conditions\Builder
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Embedded
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Embedded\SubarrayItem
  • PHPixie\Database\Type\Document\Conditions\Condition\Collection\Embedded\Subdocument
  • PHPixie\Database\Type\Document\Query\Items
  • PHPixie\Database\Type\SQL\Conditions\Builder
  • PHPixie\Database\Type\SQL\Query
  • PHPixie\Database\Type\SQL\Query\Items
  • PHPixie\Database\Type\SQL\Query\Type\Count
  • PHPixie\Database\Type\SQL\Query\Type\Delete
  • PHPixie\Database\Type\SQL\Query\Type\Insert
  • PHPixie\Database\Type\SQL\Query\Type\Select
  • PHPixie\Database\Type\SQL\Query\Type\Update
  • PHPixie\Filesystem\Locators\Locator
  • PHPixie\Filesystem\Locators\Registry
  • PHPixie\Framework\Configuration
  • PHPixie\HTTP\Context\Container
  • PHPixie\HTTP\Context\Container\Settable
  • PHPixie\HTTP\Context\Session
  • PHPixie\HTTPProcessors\Parsers\Parser
  • PHPixie\ORM\Conditions\Builder
  • PHPixie\ORM\Conditions\Condition
  • PHPixie\ORM\Conditions\Condition\Collection
  • PHPixie\ORM\Conditions\Condition\Collection\RelatedTo
  • PHPixie\ORM\Conditions\Condition\Field
  • PHPixie\ORM\Conditions\Condition\In\Item
  • PHPixie\ORM\Data\Type
  • PHPixie\ORM\Data\Type\Diffable
  • PHPixie\ORM\Mappers\Preload\Preloadable
  • PHPixie\ORM\Models\Model\Entity
  • PHPixie\ORM\Models\Type\Database\Entity
  • PHPixie\ORM\Models\Type\Database\Query
  • PHPixie\ORM\Models\Type\Database\Repository
  • PHPixie\ORM\Models\Type\Embedded\Entity
  • PHPixie\ORM\Relationships\Relationship
  • PHPixie\ORM\Relationships\Relationship\Handler
  • PHPixie\ORM\Relationships\Relationship\Handler\Cascading\Delete
  • PHPixie\ORM\Relationships\Relationship\Handler\Mapping\Database
  • PHPixie\ORM\Relationships\Relationship\Handler\Mapping\Embedded
  • PHPixie\ORM\Relationships\Relationship\Handler\Preloading
  • PHPixie\ORM\Relationships\Relationship\Preloader
  • PHPixie\ORM\Relationships\Relationship\Property
  • PHPixie\ORM\Relationships\Relationship\Property\Entity
  • PHPixie\ORM\Relationships\Relationship\Property\Entity\Data
  • PHPixie\ORM\Relationships\Relationship\Property\Entity\Query
  • PHPixie\ORM\Relationships\Relationship\Property\Query
  • PHPixie\ORM\Relationships\Relationship\Side
  • PHPixie\ORM\Relationships\Relationship\Side\Cascade\Delete
  • PHPixie\ORM\Relationships\Relationship\Side\Preload
  • PHPixie\ORM\Relationships\Relationship\Side\Property\Entity
  • PHPixie\ORM\Relationships\Relationship\Side\Property\Query
  • PHPixie\ORM\Relationships\Relationship\Side\Relationship
  • PHPixie\ORM\Relationships\Relationship\Type\Database
  • PHPixie\ORM\Steps\Result
  • PHPixie\ORM\Steps\Result\Reusable
  • PHPixie\ORM\Wrappers
  • PHPixie\Paginate\Loader
  • PHPixie\Processors\Processor
  • PHPixie\Processors\Processor\Selective
  • PHPixie\Processors\Registry
  • PHPixie\Route\Resolvers\Registry
  • PHPixie\Route\Resolvers\Resolver
  • PHPixie\Security\Tokens\Storage
  • PHPixie\Slice\Data
  • PHPixie\Slice\Data\Editable
  • PHPixie\Slice\Data\Slice
  • PHPixie\Slice\Data\Slice\Editable
  • PHPixie\Template\Extensions\Extension
  • PHPixie\Template\Formats\Format
  • Psr\Http\Message\MessageInterface
  • Psr\Http\Message\RequestInterface
  • Psr\Http\Message\ResponseInterface
  • Psr\Http\Message\ServerRequestInterface
  • Psr\Http\Message\StreamInterface
  • Psr\Http\Message\UploadedFileInterface
  • Psr\Http\Message\UriInterface

Exceptions

  • PHPixie\Auth\Exception
  • PHPixie\BundleFramework\Exception
  • PHPixie\Bundles\Exception
  • PHPixie\Config\Exception
  • PHPixie\Database\Exception
  • PHPixie\Database\Exception\Builder
  • PHPixie\Database\Exception\Driver
  • PHPixie\Database\Exception\Parser
  • PHPixie\Database\Exception\Value
  • PHPixie\Debug\Exception
  • PHPixie\Filesystem\Exception
  • PHPixie\HTTP\Exception
  • PHPixie\HTTPProcessors\Exception
  • PHPixie\ORM\Exception
  • PHPixie\ORM\Exception\Builder
  • PHPixie\ORM\Exception\Data
  • PHPixie\ORM\Exception\Entity
  • PHPixie\ORM\Exception\Loader
  • PHPixie\ORM\Exception\Mapper
  • PHPixie\ORM\Exception\Model
  • PHPixie\ORM\Exception\Plan
  • PHPixie\ORM\Exception\Planner
  • PHPixie\ORM\Exception\Query
  • PHPixie\ORM\Exception\Relationship
  • PHPixie\Paginate\Exception
  • PHPixie\Processors\Exception
  • PHPixie\Route\Exception
  • PHPixie\Route\Exception\Route
  • PHPixie\Security\Exception
  • PHPixie\Slice\Exception
  • PHPixie\Template\Exception
  • Overview
  • Namespace
  • Class
  • Tree
  • Return
  1: <?php
  2: 
  3: namespace PHPixie\ORM\Relationships\Type\OneTo;
  4: 
  5: abstract class Handler extends \PHPixie\ORM\Relationships\Relationship\Implementation\Handler
  6:                     implements \PHPixie\ORM\Relationships\Relationship\Handler\Mapping\Database,
  7:                                \PHPixie\ORM\Relationships\Relationship\Handler\Preloading,
  8:                                \PHPixie\ORM\Relationships\Relationship\Handler\Cascading\Delete
  9: {
 10: 
 11:     public function query($side, $related)
 12:     {
 13:         $config = $side->config();
 14:         if ($side->type() !== 'owner') {
 15:             $model = $config->itemModel;
 16:             $property = $config->itemOwnerProperty;
 17:         } else {
 18:             $model = $config->ownerModel;
 19:             $property = $config->ownerProperty();
 20:         }
 21: 
 22:         $repository = $this->getRepository($model);
 23:         return $repository->query()->relatedTo($property, $related);
 24:     }
 25: 
 26:     public function linkPlan($config, $owner, $items)
 27:     {
 28:         $ownerRepository = $this->getRepository($config->ownerModel);
 29:         $ownerQuery = $ownerRepository->databaseSelectQuery();
 30:         
 31:         $itemRepository = $this->getRepository($config->itemModel);
 32:         $updateQuery = $itemRepository->databaseUpdateQuery();
 33:         
 34:         $queryStep = $this->steps->query($updateQuery);
 35:         $plan = $this->plans->query($queryStep);
 36:         $requiredPlan = $plan->requiredPlan();
 37:         
 38:         $this->planners->in()->items(
 39:             $ownerQuery,
 40:             $config->ownerModel,
 41:             $owner,
 42:             $requiredPlan
 43:         );
 44:         
 45:         $this->planners->in()->items(
 46:             $updateQuery,
 47:             $config->itemModel,
 48:             $items,
 49:             $requiredPlan
 50:         );
 51: 
 52:         $this->planners->update()->subquery(
 53:             $updateQuery,
 54:             array(
 55:                 $config->ownerKey => $this->getIdField($ownerRepository)
 56:             ),
 57:             $ownerQuery,
 58:             $requiredPlan
 59:         );
 60:         
 61:         return $plan;
 62:     }
 63: 
 64:     protected function getUnlinkPlan($config, $constrainOwners, $owners, $constrainItems, $items, $logic = 'and')
 65:     {
 66:         $itemRepository = $this->getRepository($config->itemModel);
 67:         $updateQuery = $itemRepository->databaseUpdateQuery();
 68:         
 69:         $queryStep = $this->steps->query($updateQuery);
 70:         $plan = $this->plans->query($queryStep);
 71:         $requiredPlan = $plan->requiredPlan();
 72:         
 73:         $updateQuery->set($config->ownerKey, null);
 74: 
 75:         if ($constrainItems) {
 76:             $this->planners->in()->items(
 77:                 $updateQuery,
 78:                 $config->itemModel,
 79:                 $items,
 80:                 $requiredPlan
 81:             );
 82:         }
 83:         
 84:         if ($constrainOwners) {
 85:             $this->planners->in()->itemIds(
 86:                 $updateQuery,
 87:                 $config->ownerKey,
 88:                 $this->getRepository($config->ownerModel),
 89:                 $owners,
 90:                 $requiredPlan,
 91:                 $logic
 92:             );
 93:         }
 94: 
 95: 
 96:         return $plan;
 97:     }
 98: 
 99:     public function mapDatabaseQuery($query, $side, $collectionCondition, $plan)
100:     {
101:         $config = $side->config();
102:         $itemRepository = $this->getRepository($config->itemModel);
103:         $ownerRepository = $this->getRepository($config->ownerModel);
104: 
105:         if ($side->type() === 'owner') {
106:             $subqueryRepository = $ownerRepository;
107:             $queryField = $config->ownerKey;
108:             $subqueryField = $this->getIdField($ownerRepository);
109:         } else {
110:             $subqueryRepository = $itemRepository;
111:             $queryField = $this->getIdField($ownerRepository);
112:             $subqueryField = $config->ownerKey;
113:         }
114:         
115:         $subquery = $subqueryRepository->databaseSelectQuery();
116:         
117:         $conditions = $collectionCondition->conditions();
118:         $hasConditions = !empty($conditions);
119:         
120:         $isOwner = $side->type() === 'owner';
121:         
122:         if(!$isOwner) {
123:             $subquery->whereNot($config->ownerKey, null);
124:         }
125:         
126:         if($hasConditions) {
127:             
128:             if(!$isOwner) {
129:                 $subquery->startGroup();
130:             }   
131: 
132:             $this->mappers->conditions()->map(
133:                 $subquery,
134:                 $subqueryRepository->modelName(),
135:                 $collectionCondition->conditions(),
136:                 $plan
137:             );
138:             
139:             if(!$isOwner) {
140:                 $subquery->endGroup();
141:             }   
142:         }
143:         
144:         if($isOwner) {
145:             $query->startConditionGroup(
146:                 $collectionCondition->logic(),
147:                 $collectionCondition->isNegated()
148:             );
149:             
150:             $query->whereNot($config->ownerKey, null);
151:             $subqueryLogic  = 'and';
152:             $negateSubquery = false;
153:         }else{
154:             $subqueryLogic  = $collectionCondition->logic();
155:             $negateSubquery = $collectionCondition->isNegated();
156:         }
157: 
158:         $this->planners->in()->subquery(
159:             $query,
160:             $queryField,
161:             $subquery,
162:             $subqueryField,
163:             $plan,
164:             $subqueryLogic,
165:             $negateSubquery
166:         );
167:         
168:         if($isOwner) {
169:             $query->endGroup();
170:         }
171:     }
172: 
173:     public function handleDelete($side, $reusableResult, $plan, $sidePath)
174:     {
175:         $config = $side->config();
176:         $itemKey = $config->ownerKey;
177:         $itemModel = $config->itemModel;
178: 
179:         $itemRepository = $this->getRepository($itemModel);
180:         $ownerRepository = $this->getRepository($config->ownerModel);
181: 
182:         $hasHandledSides = false;
183: 
184:         if ($config->onDelete === 'update') {
185:             $query = $itemRepository->databaseUpdateQuery();
186:             $query->set($config->ownerKey, null);
187:         } else {
188:             $deleteMapper = $this->mappers->cascadeDelete();
189:             $hasHandledSides = $deleteMapper->isModelHandled($itemModel);
190:             
191:             if($hasHandledSides) {
192:                 $query = $itemRepository->databaseSelectQuery();
193:             }else{
194:                 $query = $itemRepository->databaseDeleteQuery();
195:             }
196:         }
197:         
198:         $this->planners->in()->result(
199:             $query,
200:             $config->ownerKey,
201:             $reusableResult,
202:             $this->getIdField($ownerRepository),
203:             $plan
204:         );
205:         
206:         if($hasHandledSides) {
207:             $this->mappers->cascadeDelete()->handleQuery($query, $itemModel, $plan, $sidePath);
208:             
209:         }else{
210:             $step = $this->steps->query($query);
211:             $plan->add($step);
212:         }
213:     }
214: 
215:     public function mapPreload($side, $preloadProperty, $reusableResult, $plan)
216:     {
217:         $config = $side->config();
218: 
219:         $itemRepository = $this->getRepository($config->itemModel);
220:         $ownerRepository = $this->getRepository($config->ownerModel);
221: 
222:         
223:         if ($side->type() === 'owner') {
224:             $preloadRepository = $ownerRepository;
225:             $queryField = $this->getIdField($ownerRepository);
226:             $resultField = $config->ownerKey;
227:         } else {
228:             $preloadRepository = $itemRepository;
229:             $queryField = $config->ownerKey;
230:             $resultField = $this->getIdField($ownerRepository);
231:         }
232: 
233:         $query = $preloadRepository->databaseSelectQuery();
234:         $this->planners->in()->result(
235:                                         $query,
236:                                         $queryField,
237:                                         $reusableResult,
238:                                         $resultField,
239:                                         $plan
240:                                     );
241: 
242:         $preloadStep = $this->steps->reusableResult($query);
243:         $plan->add($preloadStep);
244:         $loader = $this->loaders->reusableResult($preloadRepository, $preloadStep);
245:         $preloadingProxy = $this->loaders->preloadingProxy($loader);
246:         $cachingProxy = $this->loaders->cachingProxy($preloadingProxy);
247:         
248:         $this->mappers->preload()->map(
249:             $preloadingProxy,
250:             $preloadRepository->modelName(),
251:             $preloadProperty->preload(),
252:             $preloadStep,
253:             $plan
254:         );
255:         
256:         return $this->relationship->preloader(
257:             $side,
258:             $preloadRepository->config(),
259:             $preloadStep,
260:             $cachingProxy
261:         );
262:     }
263:     
264:     protected function getRepository($modelName)
265:     {
266:         return $this->models->database()->repository($modelName);
267:     }
268:     
269:     protected function getIdField($repository)
270:     {
271:         return $repository->config()->idField;
272:     }
273:     
274:     protected function loadSingleProperty($side, $related)
275:     {
276:         return $this->query($side, $related)->findOne();
277:     }
278:   
279: }
280: 
PHPixie 3 API API documentation generated by ApiGen