Home | History | Annotate | Download | only in codegen
      1 /*
      2 * Copyright (C) 2015 Google, Inc.
      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 dagger.internal.codegen;
     17 
     18 import com.google.common.base.Optional;
     19 import javax.tools.Diagnostic;
     20 
     21 /**
     22  * Allows options to control how component process validates things such as scope cycles
     23  * or nullability.
     24  */
     25 enum ValidationType {
     26   ERROR,
     27   WARNING,
     28   NONE;
     29 
     30   Optional<Diagnostic.Kind> diagnosticKind() {
     31     switch (this) {
     32       case ERROR:
     33         return Optional.of(Diagnostic.Kind.ERROR);
     34       case WARNING:
     35         return Optional.of(Diagnostic.Kind.WARNING);
     36       default:
     37         return Optional.absent();
     38     }
     39   }
     40 }
     41