2017-06-21 06:29:40 +02:00
|
|
|
<?php
|
|
|
|
|
2017-08-09 04:53:38 +02:00
|
|
|
namespace SilverStripe\CMS\Tests\Controllers;
|
2017-08-09 03:25:12 +02:00
|
|
|
|
2018-05-04 03:04:18 +02:00
|
|
|
use SilverStripe\CMS\Model\SiteTree;
|
2017-06-21 06:29:40 +02:00
|
|
|
use SilverStripe\Dev\TestOnly;
|
|
|
|
use SilverStripe\ORM\ValidationException;
|
2017-08-09 03:25:12 +02:00
|
|
|
|
2018-05-04 03:04:18 +02:00
|
|
|
class CMSMainTest_ClassA extends SiteTree implements TestOnly
|
2017-06-21 06:29:40 +02:00
|
|
|
{
|
2017-08-09 04:53:38 +02:00
|
|
|
private static $table_name = 'CMSMainTest_ClassA';
|
|
|
|
|
2020-04-19 06:18:01 +02:00
|
|
|
private static $allowed_children = [CMSMainTest_ClassB::class];
|
2017-06-21 06:29:40 +02:00
|
|
|
|
|
|
|
protected function onBeforeWrite()
|
|
|
|
{
|
|
|
|
parent::onBeforeWrite();
|
|
|
|
|
|
|
|
if ($this->ClassName !== self::class) {
|
|
|
|
throw new ValidationException("Class saved with incorrect ClassName");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|