Coverage Report - org.yaml.snakeyaml.tokens.DirectiveToken
 
Classes in this File Line Coverage Branch Coverage Complexity
DirectiveToken
100%
12/12
100%
6/6
2
 
 1  
 /**
 2  
  * Copyright (c) 2008-2012, http://www.snakeyaml.org
 3  
  *
 4  
  * Licensed under the Apache License, Version 2.0 (the "License");
 5  
  * you may not use this file except in compliance with the License.
 6  
  * You may obtain a copy of the License at
 7  
  *
 8  
  *     http://www.apache.org/licenses/LICENSE-2.0
 9  
  *
 10  
  * Unless required by applicable law or agreed to in writing, software
 11  
  * distributed under the License is distributed on an "AS IS" BASIS,
 12  
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 13  
  * See the License for the specific language governing permissions and
 14  
  * limitations under the License.
 15  
  */
 16  
 package org.yaml.snakeyaml.tokens;
 17  
 
 18  
 import java.util.List;
 19  
 
 20  
 import org.yaml.snakeyaml.error.Mark;
 21  
 import org.yaml.snakeyaml.error.YAMLException;
 22  
 
 23  
 public final class DirectiveToken<T> extends Token {
 24  
     private final String name;
 25  
     private final List<T> value;
 26  
 
 27  
     public DirectiveToken(String name, List<T> value, Mark startMark, Mark endMark) {
 28  5541
         super(startMark, endMark);
 29  5541
         this.name = name;
 30  5541
         if (value != null && value.size() != 2) {
 31  1
             throw new YAMLException("Two strings must be provided instead of "
 32  
                     + String.valueOf(value.size()));
 33  
         }
 34  5540
         this.value = value;
 35  5540
     }
 36  
 
 37  
     public String getName() {
 38  8326
         return this.name;
 39  
     }
 40  
 
 41  
     public List<T> getValue() {
 42  5020
         return this.value;
 43  
     }
 44  
 
 45  
     @Override
 46  
     protected String getArguments() {
 47  3
         if (value != null) {
 48  2
             return "name=" + name + ", value=[" + value.get(0) + ", " + value.get(1) + "]";
 49  
         } else {
 50  1
             return "name=" + name;
 51  
         }
 52  
     }
 53  
 
 54  
     @Override
 55  
     public Token.ID getTokenId() {
 56  12733
         return ID.Directive;
 57  
     }
 58  
 }