private function _initOne($property, $method, $mode) {
		$data = $this->__call($method);
		
		if ($data === null) {
			return;
		}

		if ($data instanceof Collection) {
			if ($mode !== self::MODE_CASCADE_MANY) {
				throw new Exception('Model hasn\'t a parental collection');
			}

			$this->_data[$property] = $data;

			return;
		}

		if ($mode === self::MODE_JOIN) {
			if ($data instanceof Model) {
				$data = $data->toArray();
			}

			if (! is_array($data)) {
				throw new Exception('Unsupported type "' . gettype($data) . '" provided by "' . $method . '()"');
			}

			$this->_data += $data;
		}
		else if ($mode === self::MODE_CASCADE) {
			$this->_data[$property] = $data;
		}
		else if ($mode === self::MODE_CASCADE_MANY) {
			throw new Exception('Unable to use a model in the "Cascade many" mode');
		}
		else {
			throw new Exception('Uncnown loading mode');
		}
	}
private function _initOne($property, $method, $mode) {
		$data = $this->__call($method);
		
		if ($data === null) {
			return;
		}

		if ($data instanceof Collection) {
			if ($mode !== self::MODE_CASCADE_MANY) {
				throw new Exception('Model hasn\'t a parental collection');
			}

			$this->_data[$property] = $data;

			return;
		}

		if ($mode === self::MODE_JOIN) {
			if ($data instanceof Model) {
				$data = $data->toArray();
			}

			if (! is_array($data)) {
				throw new Exception('Unsupported type "' . gettype($data) . '" provided by "' . $method . '()"');
			}

			$this->_data += $data;
		}
		else if ($mode === self::MODE_CASCADE) {
			$this->_data[$property] = $data;
		}
		else if ($mode === self::MODE_CASCADE_MANY) {
			throw new Exception('Unable to use a model in the "Cascade many" mode');
		}
		else {
			throw new Exception('Uncnown loading mode');
		}
	}
private function _initOne ( $ property , $ method , $ mode ) { $ data = $ this -> __call ( $ method ) ; if ( $ data === null ) { return ; } if ( $ data instanceof Collection ) { if ( $ mode !== self :: MODE_CASCADE_MANY ) { throw new Exception ( 'Model hasn\'t a parental collection' ) ; } $ this -> _data [ $ property ] = $ data ; return ; } if ( $ mode === self :: MODE_JOIN ) { if ( $ data instanceof Model ) { $ data = $ data -> toArray ( ) ; } if ( ! is_array ( $ data ) ) { throw new Exception ( 'Unsupported type "' . gettype ( $ data ) . '" provided by "' . $ method . '()"' ) ; } $ this -> _data += $ data ; } else if ( $ mode === self :: MODE_CASCADE ) { $ this -> _data [ $ property ] = $ data ; } else if ( $ mode === self :: MODE_CASCADE_MANY ) { throw new Exception ( 'Unable to use a model in the "Cascade many" mode' ) ; } else { throw new Exception ( 'Uncnown loading mode' ) ; } }
Get a data for this model

@param  string $property
@param  string $method
@param  int    $mode
@throws Exception
Get a data for this model