/* * Copyright 2003-2016 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package jetbrains.mps.generator; import org.jetbrains.annotations.NotNull; public class DefaultModifiableGenerationSettings implements IModifiableGenerationSettings { private boolean mySaveTransientModels = false; private boolean myCheckModelsBeforeGeneration = true; private boolean myParallelGenerator = false; private boolean myStrictMode = true; private int myNumberOfParallelThreads = 2; private int myPerformanceTracingLevel = GenerationOptions.TRACE_OFF; private int myNumberOfModelsToKeep = -1; private boolean myShowInfo = false; private boolean myShowWarnings = true; private boolean myKeepModelsWithWarnings = true; private boolean myIncremental = false; private boolean myIncrementalUseCache = false; private boolean myDebugIncrementalDependencies = false; private boolean myGenerateDebugInfo = true; private boolean myShowBadChildWarning = true; private boolean myActiveInplaceTransform = true; private boolean myCreateStaticRefs = true; private GenTraceSettings myTraceSettings = new GenTraceSettings(); @Override public boolean isSaveTransientModels() { return mySaveTransientModels; } @Override public void setSaveTransientModels(boolean saveTransientModels) { mySaveTransientModels = saveTransientModels; } @Override public boolean isCheckModelsBeforeGeneration() { return myCheckModelsBeforeGeneration; } @Override public void setCheckModelsBeforeGeneration(boolean checkModelsBeforeGeneration) { myCheckModelsBeforeGeneration = checkModelsBeforeGeneration; } @Override public boolean isParallelGenerator() { return myParallelGenerator; } @Override public void setParallelGenerator(boolean useNewGenerator) { myParallelGenerator = useNewGenerator; } @Override public boolean isStrictMode() { return myStrictMode; } @Override public void setStrictMode(boolean strictMode) { myStrictMode = strictMode; } @Override public int getNumberOfParallelThreads() { return myNumberOfParallelThreads; } @Override public void setNumberOfParallelThreads(int coreNumber) { myNumberOfParallelThreads = coreNumber; } @Override public int getPerformanceTracingLevel() { return myPerformanceTracingLevel; } @Override public void setPerformanceTracingLevel(int performanceTracingLevel) { myPerformanceTracingLevel = performanceTracingLevel; } @Override public int getNumberOfModelsToKeep() { return myNumberOfModelsToKeep; } @Override public void setNumberOfModelsToKeep(int numberOfModelsToKeep) { myNumberOfModelsToKeep = numberOfModelsToKeep; } @Override public boolean isShowInfo() { return myShowInfo; } @Override public void setShowInfo(boolean showInfo) { myShowInfo = showInfo; } @Override public boolean isShowWarnings() { return myShowWarnings; } @Override public void setShowWarnings(boolean showWarnings) { myShowWarnings = showWarnings; } @Override public boolean isKeepModelsWithWarnings() { return myKeepModelsWithWarnings; } @Override public void setKeepModelsWithWarnings(boolean keepModelsWithWarnings) { myKeepModelsWithWarnings = keepModelsWithWarnings; } @Override public boolean isIncremental() { return myIncremental; } @Override public void setIncremental(boolean isIncremental) { myIncremental = isIncremental; } @Override public boolean isIncrementalUseCache() { return myIncrementalUseCache; } @Override public void setIncrementalUseCache(boolean incrementalUseCache) { myIncrementalUseCache = incrementalUseCache; } @Override public boolean isDebugIncrementalDependencies() { return myDebugIncrementalDependencies; } @Override public void setDebugIncrementalDependencies(boolean value) { myDebugIncrementalDependencies = value; } @Override public boolean isFailOnMissingTextGen() { return false; } @Override public void setFailOnMissingTextGen(boolean fail) { // no-op } @Override public boolean isGenerateDebugInfo() { return myGenerateDebugInfo; } @Override public void setGenerateDebugInfo(boolean generateDebugInfo) { myGenerateDebugInfo = generateDebugInfo; } @Override public boolean isShowBadChildWarning() { return myShowBadChildWarning; } @Override public void setShowBadChildWarning(boolean showBadChildWarning) { myShowBadChildWarning = showBadChildWarning; } @Override public void enableInplaceTransformations(boolean enabled) { myActiveInplaceTransform = enabled; } @Override public boolean useInplaceTransformations() { return myActiveInplaceTransform; } @Override public void setCreateStaticReferences(boolean createStaticRefs) { myCreateStaticRefs = createStaticRefs; } @Override public boolean createStaticReferences() { return myCreateStaticRefs; } @NotNull @Override public GenTraceSettings getTraceSettings() { return myTraceSettings; } public void setTraceSettings(@NotNull GenTraceSettings settings) { myTraceSettings = settings; } }