Code Duplication    Length = 56-57 lines in 2 locations

src/OroCRM/Bundle/CaseBundle/Migrations/Schema/v1_8/CreateActivityAssociation.php 1 location

@@ 14-70 (lines=57) @@
11
use Oro\Bundle\MigrationBundle\Migration\Migration;
12
use Oro\Bundle\MigrationBundle\Migration\QueryBag;
13
14
class CreateActivityAssociation implements Migration, ActivityExtensionAwareInterface, NoteExtensionAwareInterface
15
{
16
    /** @var ActivityExtension */
17
    protected $activityExtension;
18
19
    /** @var NoteExtension */
20
    protected $noteExtension;
21
22
    /**
23
     * {@inheritdoc}
24
     */
25
    public function setActivityExtension(ActivityExtension $activityExtension)
26
    {
27
        $this->activityExtension = $activityExtension;
28
    }
29
30
    /**
31
     * {@inheritdoc}
32
     */
33
    public function setNoteExtension(NoteExtension $noteExtension)
34
    {
35
        $this->noteExtension = $noteExtension;
36
    }
37
38
    /**
39
     * {@inheritdoc}
40
     */
41
    public function up(Schema $schema, QueryBag $queries)
42
    {
43
        self::addActivityAssociations($schema, $this->activityExtension);
44
        self::addNoteAssociations($schema, $this->noteExtension);
45
    }
46
47
    /**
48
     * Enable activities
49
     *
50
     * @param Schema            $schema
51
     * @param ActivityExtension $activityExtension
52
     */
53
    public static function addActivityAssociations(Schema $schema, ActivityExtension $activityExtension)
54
    {
55
        $activityExtension->addActivityAssociation($schema, 'orocrm_call', 'orocrm_case');
56
        $activityExtension->addActivityAssociation($schema, 'orocrm_task', 'orocrm_case');
57
        $activityExtension->addActivityAssociation($schema, 'oro_calendar_event', 'orocrm_case');
58
    }
59
60
    /**
61
     * Enable notes for Case entity
62
     *
63
     * @param Schema        $schema
64
     * @param NoteExtension $noteExtension
65
     */
66
    public static function addNoteAssociations(Schema $schema, NoteExtension $noteExtension)
67
    {
68
        $noteExtension->addNoteAssociation($schema, 'orocrm_case');
69
    }
70
}
71

src/OroCRM/Bundle/MagentoBundle/Migrations/Schema/v1_40/CreateActivityAssociation.php 1 location

@@ 14-69 (lines=56) @@
11
use Oro\Bundle\MigrationBundle\Migration\Migration;
12
use Oro\Bundle\MigrationBundle\Migration\QueryBag;
13
14
class CreateActivityAssociation implements Migration, ActivityExtensionAwareInterface, NoteExtensionAwareInterface
15
{
16
    /** @var ActivityExtension */
17
    protected $activityExtension;
18
19
    /** @var NoteExtension */
20
    protected $noteExtension;
21
22
    /**
23
     * {@inheritdoc}
24
     */
25
    public function setActivityExtension(ActivityExtension $activityExtension)
26
    {
27
        $this->activityExtension = $activityExtension;
28
    }
29
30
    /**
31
     * {@inheritdoc}
32
     */
33
    public function setNoteExtension(NoteExtension $noteExtension)
34
    {
35
        $this->noteExtension = $noteExtension;
36
    }
37
38
    /**
39
     * {@inheritdoc}
40
     */
41
    public function up(Schema $schema, QueryBag $queries)
42
    {
43
        self::addActivityAssociations($schema, $this->activityExtension);
44
        self::addNoteAssociations($schema, $this->noteExtension);
45
    }
46
47
    /**
48
     * Enable activities
49
     *
50
     * @param Schema            $schema
51
     * @param ActivityExtension $activityExtension
52
     */
53
    public static function addActivityAssociations(Schema $schema, ActivityExtension $activityExtension)
54
    {
55
        $activityExtension->addActivityAssociation($schema, 'orocrm_task', 'orocrm_magento_order');
56
        $activityExtension->addActivityAssociation($schema, 'oro_calendar_event', 'orocrm_magento_order');
57
    }
58
59
    /**
60
     * Enable notes for Magento Order entity
61
     *
62
     * @param Schema        $schema
63
     * @param NoteExtension $noteExtension
64
     */
65
    public static function addNoteAssociations(Schema $schema, NoteExtension $noteExtension)
66
    {
67
        $noteExtension->addNoteAssociation($schema, 'orocrm_magento_order');
68
    }
69
}
70