    001    /*
    002     * Licensed to the Apache Software Foundation (ASF) under one or more
    003     * contributor license agreements.  See the NOTICE file distributed with
    004     * this work for additional information regarding copyright ownership.
    005     * The ASF licenses this file to You under the Apache License, Version 2.0
    006     * (the "License"); you may not use this file except in compliance with
    007     * the License.  You may obtain a copy of the License at
    008     *
    009     *      http://www.apache.org/licenses/LICENSE-2.0
    010     *
    011     * Unless required by applicable law or agreed to in writing, software
    012     * distributed under the License is distributed on an "AS IS" BASIS,
    013     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    014     * See the License for the specific language governing permissions and
    015     * limitations under the License.
    016     */
    017
    018    package org.apache.commons.jci.compilers;
    019
    020
    021
    022    /**
    023     * Most common denominator for JavaCompiler settings.
    024     *
    025     * If you need more specific settings you have to provide
    026     * the native compiler configurations to the compilers.
    027     * Writing of a custom factory is suggested.
    028     *
    029     * @author tcurdt
    030     */
    031    public class JavaCompilerSettings {
    032
    033        private String targetVersion = "1.4";
    034        private String sourceVersion = "1.4";
    035        private String sourceEncoding = "UTF-8";
    036        private boolean warnings = false;
    037        private boolean deprecations = false;
    038        private boolean debug = false;
    039
    040        /** @deprecated */
    041        @Deprecated
    042        private boolean verbose = false;
    043
    044        public JavaCompilerSettings() {
    045        }
    046
    047        public JavaCompilerSettings( final JavaCompilerSettings pSettings ) {
    048            targetVersion = pSettings.targetVersion;
    049            sourceVersion = pSettings.sourceVersion;
    050            sourceEncoding = pSettings.sourceEncoding;
    051            warnings = pSettings.warnings;
    052            deprecations = pSettings.deprecations;
    053            debug = pSettings.debug;
    054        }
    055
    056        public void setTargetVersion( final String pTargetVersion ) {
    057            targetVersion = pTargetVersion;
    058        }
    059
    060        public String getTargetVersion() {
    061            return targetVersion;
    062        }
    063
    064
    065        public void setSourceVersion( final String pSourceVersion ) {
    066            sourceVersion = pSourceVersion;
    067        }
    068
    069        public String getSourceVersion() {
    070            return sourceVersion;
    071        }
    072
    073
    074        public void setSourceEncoding( final String pSourceEncoding ) {
    075            sourceEncoding = pSourceEncoding;
    076        }
    077
    078        public String getSourceEncoding() {
    079            return sourceEncoding;
    080        }
    081
    082
    083        public void setWarnings( final boolean pWarnings ) {
    084            warnings = pWarnings;
    085        }
    086
    087        public boolean isWarnings() {
    088            return warnings;
    089        }
    090
    091
    092        public void setDeprecations( final boolean pDeprecations )  {
    093            deprecations = pDeprecations;
    094        }
    095
    096        public boolean isDeprecations() {
    097            return deprecations;
    098        }
    099
    100        public void setDebug( final boolean pDebug )  {
    101            debug = pDebug;
    102        }
    103
    104        public boolean isDebug() {
    105            return debug;
    106        }
    107
    108        /** @deprecated */
    109        @Deprecated
    110        public void setVerbose( final boolean pVerbose ) {
    111            verbose = pVerbose;
    112        }
    113
    114        /** @deprecated */
    115        @Deprecated
    116        public boolean isVerbose() {
    117            return verbose;
    118        }
    119
    120    }