Xpressengine\Document\ConfigHandler::make PHP Method

make() public method

새로운 document config entity 를 만들어 반환
public make ( string $instanceId, array $params ) : ConfigEntity
$instanceId string instance id
$params array parameters
return Xpressengine\Config\ConfigEntity
    public function make($instanceId, array $params)
    {
        $config = ['instanceId' => $instanceId, 'group' => 'documents_' . $instanceId];
        $config = array_merge($config, $params);
        foreach ($this->getDefault() as $name => $value) {
            if (isset($params[$name]) === true) {
                $value = $params[$name];
            }
            $config[$name] = $value;
        }
        $configEntity = new ConfigEntity();
        foreach ($config as $name => $value) {
            $configEntity->set($name, $value);
        }
        return $configEntity;
    }

Usage Example

 /**
  * test add config
  *
  * @return void
  */
 public function testAddConfig()
 {
     $instanceConfig1Params = ['instanceId' => 'instance1', 'instanceName' => 'instance1Name', 'param1' => 'param1'];
     $instanceConfig1 = m::mock('Xpressengine\\Config\\ConfigEntity');
     $instanceConfig1->shouldReceive('get')->with('instanceId')->andReturn('instance1');
     $instanceConfig1->shouldReceive('getPureAll')->andReturn($instanceConfig1Params);
     $instanceConfig1->shouldReceive('diff')->andReturn([]);
     $configManager = m::mock('Xpressengine\\Config\\ConfigManager');
     $configManager->shouldReceive('add')->with(sprintf('%s.instance1', ConfigHandler::CONFIG_NAME), $instanceConfig1Params)->andReturn($instanceConfig1);
     $configManager->shouldReceive('put')->with(sprintf('%s.instance1', ConfigHandler::CONFIG_NAME), $instanceConfig1Params)->andReturn($instanceConfig1);
     $configManager->shouldReceive('remove');
     $configManager->shouldReceive('get')->with(sprintf('%s.instance1', ConfigHandler::CONFIG_NAME))->andReturn($instanceConfig1);
     /** @var \Xpressengine\Config\ConfigManager $configManager */
     $configHandler = new ConfigHandler($configManager);
     $params = ['param1' => 'param1'];
     $config = $configHandler->make('instance1', $params);
     $this->assertInstanceOf('Xpressengine\\Config\\ConfigEntity', $config);
     /** @var \Xpressengine\Config\ConfigEntity $instanceConfig1 */
     $configHandler->add($instanceConfig1);
     $configHandler->put($instanceConfig1);
     $configHandler->remove($instanceConfig1);
 }
All Usage Examples Of Xpressengine\Document\ConfigHandler::make