2 * Copyright 2000-2009 JetBrains s.r.o.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
16 package com
.intellij
.refactoring
;
18 import com
.intellij
.openapi
.components
.PersistentStateComponent
;
19 import com
.intellij
.openapi
.components
.ServiceManager
;
20 import com
.intellij
.openapi
.components
.State
;
21 import com
.intellij
.openapi
.components
.Storage
;
22 import com
.intellij
.util
.xmlb
.XmlSerializerUtil
;
25 name
= "RefactoringSettings",
29 file
= "$APP_CONFIG$/other.xml"
32 public class JavaRefactoringSettings
implements PersistentStateComponent
<JavaRefactoringSettings
> {
33 // properties should be public in order to get saved by DefaultExternalizable implementation
35 //public boolean RENAME_PREVIEW_USAGES = true;
36 public boolean RENAME_SEARCH_IN_COMMENTS_FOR_PACKAGE
= true;
37 public boolean RENAME_SEARCH_IN_COMMENTS_FOR_CLASS
= true;
38 public boolean RENAME_SEARCH_IN_COMMENTS_FOR_METHOD
= true;
39 public boolean RENAME_SEARCH_IN_COMMENTS_FOR_FIELD
= true;
40 public boolean RENAME_SEARCH_IN_COMMENTS_FOR_VARIABLE
= true;
42 public boolean RENAME_SEARCH_FOR_TEXT_FOR_PACKAGE
= true;
43 public boolean RENAME_SEARCH_FOR_TEXT_FOR_CLASS
= true;
44 public boolean RENAME_SEARCH_FOR_TEXT_FOR_METHOD
= true;
45 public boolean RENAME_SEARCH_FOR_TEXT_FOR_FIELD
= true;
46 public boolean RENAME_SEARCH_FOR_TEXT_FOR_VARIABLE
= true;
48 //public boolean ENCAPSULATE_FIELDS_PREVIEW_USAGES = true;
49 public boolean ENCAPSULATE_FIELDS_USE_ACCESSORS_WHEN_ACCESSIBLE
= true;
51 public boolean EXTRACT_INTERFACE_PREVIEW_USAGES
= true;
53 public boolean MOVE_PREVIEW_USAGES
= true;
54 public boolean MOVE_SEARCH_IN_COMMENTS
= true;
55 public boolean MOVE_SEARCH_FOR_TEXT
= true;
58 //public boolean INLINE_METHOD_PREVIEW_USAGES = true;
59 //public boolean INLINE_FIELD_PREVIEW_USAGES = true;
61 //public boolean CHANGE_SIGNATURE_PREVIEW_USAGES = true;
62 public boolean CHANGE_CLASS_SIGNATURE_PREVIEW_USAGES
= true;
64 public boolean MOVE_INNER_PREVIEW_USAGES
= true;
66 //public boolean TYPE_COOK_PREVIEW_USAGES = true;
67 public boolean TYPE_COOK_DROP_CASTS
= true;
68 public boolean TYPE_COOK_PRESERVE_RAW_ARRAYS
= true;
69 public boolean TYPE_COOK_LEAVE_OBJECT_PARAMETERIZED_TYPES_RAW
= true;
70 public boolean TYPE_COOK_EXHAUSTIVE
= false;
71 public boolean TYPE_COOK_COOK_OBJECTS
= false;
72 public boolean TYPE_COOK_PRODUCE_WILDCARDS
= false;
74 public boolean TYPE_MIGRATION_PREVIEW_USAGES
= true;
76 //public boolean MAKE_METHOD_STATIC_PREVIEW_USAGES;
77 //public boolean INTRODUCE_PARAMETER_PREVIEW_USAGES;
78 public int INTRODUCE_PARAMETER_REPLACE_FIELDS_WITH_GETTERS
;
79 public int EXTRACT_INTERFACE_JAVADOC
;
80 public int EXTRACT_SUPERCLASS_JAVADOC
;
81 public boolean TURN_REFS_TO_SUPER_PREVIEW_USAGES
;
82 public boolean INTRODUCE_PARAMETER_DELETE_LOCAL_VARIABLE
;
83 public String INTRODUCE_FIELD_VISIBILITY
;
84 public int PULL_UP_MEMBERS_JAVADOC
;
85 public boolean PUSH_DOWN_PREVIEW_USAGES
;
86 public boolean INLINE_METHOD_THIS
;
87 public boolean INLINE_FIELD_THIS
;
88 //public boolean INHERITANCE_TO_DELEGATION_PREVIEW_USAGES;
89 public boolean INHERITANCE_TO_DELEGATION_DELEGATE_OTHER
;
90 //public boolean REPLACE_CONSTRUCTOR_WITH_FACTORY_PREVIEW_USAGES;
91 public String INTRODUCE_CONSTANT_VISIBILITY
;
92 public boolean CONVERT_TO_INSTANCE_METHOD_PREVIEW_USAGES
= true;
94 public Boolean INTRODUCE_LOCAL_CREATE_FINALS
= null;
95 public Boolean INTRODUCE_PARAMETER_CREATE_FINALS
= null;
97 public boolean INLINE_CLASS_SEARCH_IN_COMMENTS
= true;
98 public boolean INLINE_CLASS_SEARCH_IN_NON_JAVA
= true;
100 @SuppressWarnings({"WeakerAccess"}) public boolean RENAME_INHERITORS
= true;
101 @SuppressWarnings({"WeakerAccess"}) public boolean RENAME_PARAMETER_IN_HIERARCHY
= true;
102 @SuppressWarnings({"WeakerAccess"}) public boolean RENAME_VARIABLES
= true;
104 public static JavaRefactoringSettings
getInstance() {
105 return ServiceManager
.getService(JavaRefactoringSettings
.class);
108 public boolean isToRenameInheritors() {
109 return RENAME_INHERITORS
;
112 public boolean isToRenameVariables() {
113 return RENAME_VARIABLES
;
116 public void setRenameInheritors(final boolean RENAME_INHERITORS
) {
117 this.RENAME_INHERITORS
= RENAME_INHERITORS
;
120 public void setRenameVariables(final boolean RENAME_VARIABLES
) {
121 this.RENAME_VARIABLES
= RENAME_VARIABLES
;
124 public boolean isRenameParameterInHierarchy() {
125 return RENAME_PARAMETER_IN_HIERARCHY
;
128 public void setRenameParameterInHierarchy(boolean rename
) {
129 this.RENAME_PARAMETER_IN_HIERARCHY
= rename
;
132 public JavaRefactoringSettings
getState() {
136 public void loadState(JavaRefactoringSettings state
) {
137 XmlSerializerUtil
.copyBean(state
, this);