1   /*
2    * Logback: the reliable, generic, fast and flexible logging framework.
3    * Copyright (C) 1999-2026, QOS.ch. All rights reserved.
4    *
5    * This program and the accompanying materials are dual-licensed under
6    * either the terms of the Eclipse Public License v2.0 as published by
7    * the Eclipse Foundation
8    *
9    *   or (per the licensee's choosing)
10   *
11   * under the terms of the GNU Lesser General Public License version 2.1
12   * as published by the Free Software Foundation.
13   */
14  package ch.qos.logback.core.model.processor;
15  
16  import ch.qos.logback.core.model.Model;
17  
18  /**
19   * Defines the relation between a depender (of type Model) and a dependency name (String).
20   * 
21   * Note that a depender may have multiple dependencies but
22   * {@link DependencyDefinition} applies to just one dependency relation.
23   * 
24   * @author ceki
25   *
26   */
27  public class DependencyDefinition {
28  
29      // depender depends on dependency (new terminology)
30      // dependency synonym dependee
31      // depender synonym dependent
32  
33      // OLD terminology: dependee (=dependency), dependent(=depender)
34      //
35      // NEW terminology: *dependent*: a component of type Model which depends on a *dependency*
36      Model depender;
37      // dependee or dependency: the string name of a component depended upon by the depender of type Model
38      String dependency;
39      
40      public DependencyDefinition(Model depender, String dependency) {
41          this.depender = depender;
42          this.dependency = dependency;
43          
44          
45      }
46      
47      public String getDependency() {
48          return dependency;
49      }
50  
51      public Model getDepender() {
52          return depender;
53      }
54  
55  
56      @Override
57      public String toString() {
58          return "DependencyDefinition{" +
59                  "depender=" + depender +
60                  ", dependency='" + dependency + '\'' +
61                  '}';
62      }
63  }