diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index a5e0622190..f76157cf34 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -48,9 +48,22 @@ All PRs have to be reviewed and signed off by another developer before being mer
branch. This review will likely ask for some changes to the code - please don't be alarmed or upset
at this; it is expected that all PRs will need tweaks and a normal part of the process.
+The PRs are checked to be compliant with the Java Google code style.
+
Be aware that all Operator SDK code is released under the [Apache 2.0 licence](LICENSE).
-### Thanks
+## Development environment setup
+
+### Code style
+
+The SDK modules and samples are formatted to follow the Java Google code style.
+On every `compile` the code gets formatted automatically,
+however, to make things simpler (i.e. avoid getting a PR rejected simply because of code style issues), you can import one of the following code style schemes based on the IDE you use:
+
+- for *Intellij IDEA* import [contributing/intellij-google-style.xml](contributing/intellij-google-style.xml)
+- for *Eclipse* import [contributing/eclipse-google-style.xml](contributing/eclipse-google-style.xml)
+
+## Thanks
These guidelines were best on several sources, including
[Atom](https://github.com/atom/atom/blob/master/CONTRIBUTING.md), [PurpleBooth's
diff --git a/contributing/eclipse-google-style.xml b/contributing/eclipse-google-style.xml
new file mode 100644
index 0000000000..7bb6804eb3
--- /dev/null
+++ b/contributing/eclipse-google-style.xml
@@ -0,0 +1,337 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/contributing/intellij-google-style.xml b/contributing/intellij-google-style.xml
new file mode 100644
index 0000000000..f3a6743efa
--- /dev/null
+++ b/contributing/intellij-google-style.xml
@@ -0,0 +1,598 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ xmlns:android
+
+ ^$
+
+
+
+
+
+
+
+
+ xmlns:.*
+
+ ^$
+
+
+ BY_NAME
+
+
+
+
+
+
+ .*:id
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ style
+
+ ^$
+
+
+
+
+
+
+
+
+ .*
+
+ ^$
+
+
+ BY_NAME
+
+
+
+
+
+
+ .*:.*Style
+
+ http://schemas.android.com/apk/res/android
+
+
+ BY_NAME
+
+
+
+
+
+
+ .*:layout_width
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_height
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_weight
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_margin
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_marginTop
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_marginBottom
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_marginStart
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_marginEnd
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_marginLeft
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_marginRight
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:layout_.*
+
+ http://schemas.android.com/apk/res/android
+
+
+ BY_NAME
+
+
+
+
+
+
+ .*:padding
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:paddingTop
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:paddingBottom
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:paddingStart
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:paddingEnd
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:paddingLeft
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:paddingRight
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*
+ http://schemas.android.com/apk/res/android
+
+
+ BY_NAME
+
+
+
+
+
+
+ .*
+ http://schemas.android.com/apk/res-auto
+
+
+ BY_NAME
+
+
+
+
+
+
+ .*
+ http://schemas.android.com/tools
+
+
+ BY_NAME
+
+
+
+
+
+
+ .*
+ .*
+
+
+ BY_NAME
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/ClassMappingProvider.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/ClassMappingProvider.java
index 481e27a5a4..baeaa5c275 100644
--- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/ClassMappingProvider.java
+++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/ClassMappingProvider.java
@@ -4,7 +4,11 @@
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
-import java.util.*;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
import java.util.stream.Collectors;
import org.apache.commons.lang3.ClassUtils;
import org.slf4j.Logger;
diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/Operator.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/Operator.java
index 6f94656521..e962852cca 100644
--- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/Operator.java
+++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/Operator.java
@@ -1,6 +1,7 @@
package io.javaoperatorsdk.operator;
-import static io.javaoperatorsdk.operator.ControllerUtils.*;
+import static io.javaoperatorsdk.operator.ControllerUtils.getCrdName;
+import static io.javaoperatorsdk.operator.ControllerUtils.getCustomResourceClass;
import io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition;
import io.fabric8.kubernetes.client.CustomResource;
diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/EventBuffer.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/EventBuffer.java
index 3e8b63a36c..872e9df9f0 100644
--- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/EventBuffer.java
+++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/EventBuffer.java
@@ -1,7 +1,11 @@
package io.javaoperatorsdk.operator.processing;
import io.javaoperatorsdk.operator.processing.event.Event;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
class EventBuffer {
diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/EventDispatcher.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/EventDispatcher.java
index 3246be7f47..baff222eb5 100644
--- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/EventDispatcher.java
+++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/EventDispatcher.java
@@ -1,13 +1,19 @@
package io.javaoperatorsdk.operator.processing;
import static io.javaoperatorsdk.operator.EventListUtils.containsCustomResourceDeletedEvent;
-import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.*;
+import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.getUID;
+import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.getVersion;
+import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.markedForDeletion;
import io.fabric8.kubernetes.client.CustomResource;
import io.fabric8.kubernetes.client.dsl.MixedOperation;
import io.fabric8.kubernetes.client.dsl.Resource;
import io.javaoperatorsdk.operator.ControllerUtils;
-import io.javaoperatorsdk.operator.api.*;
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.DefaultContext;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import io.javaoperatorsdk.operator.processing.event.EventList;
import io.javaoperatorsdk.operator.processing.event.EventSourceManager;
import java.util.ArrayList;
diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/annotation/ControllerAnnotationProcessor.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/annotation/ControllerAnnotationProcessor.java
index bddf800ecb..f5da97056b 100644
--- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/annotation/ControllerAnnotationProcessor.java
+++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/annotation/ControllerAnnotationProcessor.java
@@ -4,7 +4,12 @@
import static io.javaoperatorsdk.operator.ControllerUtils.DONEABLES_RESOURCE_PATH;
import com.google.auto.service.AutoService;
-import com.squareup.javapoet.*;
+import com.squareup.javapoet.ClassName;
+import com.squareup.javapoet.JavaFile;
+import com.squareup.javapoet.MethodSpec;
+import com.squareup.javapoet.ParameterizedTypeName;
+import com.squareup.javapoet.TypeName;
+import com.squareup.javapoet.TypeSpec;
import io.fabric8.kubernetes.api.builder.Function;
import io.fabric8.kubernetes.client.CustomResourceDoneable;
import io.javaoperatorsdk.operator.api.ResourceController;
@@ -14,9 +19,18 @@
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
-import javax.annotation.processing.*;
+import javax.annotation.processing.AbstractProcessor;
+import javax.annotation.processing.ProcessingEnvironment;
+import javax.annotation.processing.Processor;
+import javax.annotation.processing.RoundEnvironment;
+import javax.annotation.processing.SupportedAnnotationTypes;
+import javax.annotation.processing.SupportedSourceVersion;
import javax.lang.model.SourceVersion;
-import javax.lang.model.element.*;
+import javax.lang.model.element.Element;
+import javax.lang.model.element.ElementKind;
+import javax.lang.model.element.Modifier;
+import javax.lang.model.element.PackageElement;
+import javax.lang.model.element.TypeElement;
import javax.lang.model.type.DeclaredType;
import javax.lang.model.type.TypeKind;
import javax.lang.model.type.TypeMirror;
diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/DefaultEventSourceManager.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/DefaultEventSourceManager.java
index abd321f579..be8e76f643 100644
--- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/DefaultEventSourceManager.java
+++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/DefaultEventSourceManager.java
@@ -2,7 +2,9 @@
import io.javaoperatorsdk.operator.processing.DefaultEventHandler;
import io.javaoperatorsdk.operator.processing.event.internal.CustomResourceEventSource;
-import java.util.*;
+import java.util.Collections;
+import java.util.Map;
+import java.util.Optional;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.locks.ReentrantLock;
import org.slf4j.Logger;
diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/internal/CustomResourceEventSource.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/internal/CustomResourceEventSource.java
index 93bc3ff6f5..503ff16972 100644
--- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/internal/CustomResourceEventSource.java
+++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/internal/CustomResourceEventSource.java
@@ -1,6 +1,8 @@
package io.javaoperatorsdk.operator.processing.event.internal;
-import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.*;
+import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.getUID;
+import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.getVersion;
+import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.markedForDeletion;
import static java.net.HttpURLConnection.HTTP_GONE;
import io.fabric8.kubernetes.client.CustomResource;
diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/internal/TimerEventSource.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/internal/TimerEventSource.java
index e45e854cc6..deab6c3c19 100644
--- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/internal/TimerEventSource.java
+++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/processing/event/internal/TimerEventSource.java
@@ -3,7 +3,9 @@
import io.fabric8.kubernetes.client.CustomResource;
import io.javaoperatorsdk.operator.processing.KubernetesResourceUtils;
import io.javaoperatorsdk.operator.processing.event.AbstractEventSource;
-import java.util.*;
+import java.util.Map;
+import java.util.Timer;
+import java.util.TimerTask;
import java.util.concurrent.ConcurrentHashMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/ControllerUtilsTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/ControllerUtilsTest.java
index 543d5ba812..7335be37cc 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/ControllerUtilsTest.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/ControllerUtilsTest.java
@@ -1,10 +1,17 @@
package io.javaoperatorsdk.operator;
-import static org.junit.jupiter.api.Assertions.*;
+import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import io.fabric8.kubernetes.client.CustomResource;
import io.fabric8.kubernetes.client.CustomResourceDoneable;
-import io.javaoperatorsdk.operator.api.*;
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import io.javaoperatorsdk.operator.sample.simple.TestCustomResource;
import io.javaoperatorsdk.operator.sample.simple.TestCustomResourceController;
import org.junit.jupiter.api.Assertions;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/EventDispatcherTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/EventDispatcherTest.java
index 3d06b271f9..74e1725d37 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/EventDispatcherTest.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/EventDispatcherTest.java
@@ -1,7 +1,14 @@
package io.javaoperatorsdk.operator;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.argThat;
+import static org.mockito.Mockito.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
import io.fabric8.kubernetes.client.CustomResource;
import io.fabric8.kubernetes.client.Watcher;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/EventSourceIT.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/EventSourceIT.java
index 4086ef758a..b727b3c623 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/EventSourceIT.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/EventSourceIT.java
@@ -1,7 +1,9 @@
package io.javaoperatorsdk.operator;
import static io.javaoperatorsdk.operator.IntegrationTestSupport.TEST_NAMESPACE;
-import static io.javaoperatorsdk.operator.sample.event.EventSourceTestCustomResourceController.*;
+import static io.javaoperatorsdk.operator.sample.event.EventSourceTestCustomResourceController.FINALIZER_NAME;
+import static io.javaoperatorsdk.operator.sample.event.EventSourceTestCustomResourceController.TIMER_DELAY;
+import static io.javaoperatorsdk.operator.sample.event.EventSourceTestCustomResourceController.TIMER_PERIOD;
import static org.assertj.core.api.Assertions.assertThat;
import io.fabric8.kubernetes.api.model.ObjectMetaBuilder;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/DefaultEventHandlerTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/DefaultEventHandlerTest.java
index 46318a973d..5e194fad01 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/DefaultEventHandlerTest.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/DefaultEventHandlerTest.java
@@ -2,7 +2,12 @@
import static io.javaoperatorsdk.operator.TestUtils.testCustomResource;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.timeout;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
import io.fabric8.kubernetes.client.Watcher;
import io.javaoperatorsdk.operator.processing.event.DefaultEventSourceManager;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/EventBufferTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/EventBufferTest.java
index 1351236c74..01688765dd 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/EventBufferTest.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/EventBufferTest.java
@@ -1,7 +1,6 @@
package io.javaoperatorsdk.operator.processing;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.jupiter.api.Assertions.*;
import io.javaoperatorsdk.operator.processing.event.Event;
import io.javaoperatorsdk.operator.processing.event.internal.TimerEvent;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/annotation/ControllerAnnotationProcessorTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/annotation/ControllerAnnotationProcessorTest.java
index a8f22fd26d..1260249ae4 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/annotation/ControllerAnnotationProcessorTest.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/annotation/ControllerAnnotationProcessorTest.java
@@ -1,7 +1,10 @@
package io.javaoperatorsdk.operator.processing.annotation;
-import com.google.testing.compile.*;
+import com.google.testing.compile.Compilation;
+import com.google.testing.compile.CompilationSubject;
import com.google.testing.compile.Compiler;
+import com.google.testing.compile.JavaFileObjectSubject;
+import com.google.testing.compile.JavaFileObjects;
import javax.tools.JavaFileObject;
import org.junit.jupiter.api.Test;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/DefaultEventSourceManagerTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/DefaultEventSourceManagerTest.java
index 5f82a0ace8..a42c824e8c 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/DefaultEventSourceManagerTest.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/DefaultEventSourceManagerTest.java
@@ -3,7 +3,10 @@
import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.getUID;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
import io.fabric8.kubernetes.client.CustomResource;
import io.javaoperatorsdk.operator.TestUtils;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/internal/CustomResourceEventSourceTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/internal/CustomResourceEventSourceTest.java
index 7080eeb3a3..9e286626ba 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/internal/CustomResourceEventSourceTest.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/internal/CustomResourceEventSourceTest.java
@@ -1,7 +1,9 @@
package io.javaoperatorsdk.operator.processing.event.internal;
-import static org.junit.jupiter.api.Assertions.*;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.dsl.MixedOperation;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/internal/TimerEventSourceTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/internal/TimerEventSourceTest.java
index ddb1c6dca6..cf95374b2e 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/internal/TimerEventSourceTest.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/processing/event/internal/TimerEventSourceTest.java
@@ -1,8 +1,13 @@
package io.javaoperatorsdk.operator.processing.event.internal;
-import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.*;
+import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.getUID;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.timeout;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
import io.fabric8.kubernetes.client.CustomResource;
import io.javaoperatorsdk.operator.TestUtils;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/event/EventSourceTestCustomResourceController.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/event/EventSourceTestCustomResourceController.java
index cdc466bc16..6cfb0b2565 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/event/EventSourceTestCustomResourceController.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/event/EventSourceTestCustomResourceController.java
@@ -1,7 +1,11 @@
package io.javaoperatorsdk.operator.sample.event;
import io.javaoperatorsdk.operator.TestExecutionInfoProvider;
-import io.javaoperatorsdk.operator.api.*;
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import io.javaoperatorsdk.operator.processing.event.EventSourceManager;
import io.javaoperatorsdk.operator.processing.event.internal.TimerEventSource;
import java.util.concurrent.atomic.AtomicInteger;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/simple/TestCustomResourceController.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/simple/TestCustomResourceController.java
index f719566c0b..63f93f40ac 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/simple/TestCustomResourceController.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/simple/TestCustomResourceController.java
@@ -5,7 +5,11 @@
import io.fabric8.kubernetes.api.model.ObjectMetaBuilder;
import io.fabric8.kubernetes.client.KubernetesClient;
import io.javaoperatorsdk.operator.TestExecutionInfoProvider;
-import io.javaoperatorsdk.operator.api.*;
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;
diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/subresource/SubResourceTestCustomResourceController.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/subresource/SubResourceTestCustomResourceController.java
index 0756b508f7..e0e0100225 100644
--- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/subresource/SubResourceTestCustomResourceController.java
+++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/subresource/SubResourceTestCustomResourceController.java
@@ -1,7 +1,11 @@
package io.javaoperatorsdk.operator.sample.subresource;
import io.javaoperatorsdk.operator.TestExecutionInfoProvider;
-import io.javaoperatorsdk.operator.api.*;
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import java.util.concurrent.atomic.AtomicInteger;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/operator-framework/src/test/resources/AbstractController.java b/operator-framework/src/test/resources/AbstractController.java
index e5462316c6..b87794bc53 100644
--- a/operator-framework/src/test/resources/AbstractController.java
+++ b/operator-framework/src/test/resources/AbstractController.java
@@ -1,23 +1,9 @@
package io;
import io.fabric8.kubernetes.client.CustomResource;
-import io.fabric8.kubernetes.client.CustomResourceDoneable;
-import io.javaoperatorsdk.operator.api.Context;
-import io.javaoperatorsdk.operator.api.Controller;
import io.javaoperatorsdk.operator.api.ResourceController;
-import io.javaoperatorsdk.operator.api.UpdateControl;
-import io.fabric8.kubernetes.api.model.Secret;
-import io.fabric8.kubernetes.api.model.SecretBuilder;
-import io.fabric8.kubernetes.client.KubernetesClient;
-import org.apache.commons.lang3.RandomStringUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
import java.io.Serializable;
-import static java.lang.String.format;
-
public abstract class AbstractController implements Serializable, ResourceController {
public static class MyCustomResource extends CustomResource {
diff --git a/operator-framework/src/test/resources/ControllerImplemented2Interfaces.java b/operator-framework/src/test/resources/ControllerImplemented2Interfaces.java
index 99b7c678b2..9f12f17b75 100644
--- a/operator-framework/src/test/resources/ControllerImplemented2Interfaces.java
+++ b/operator-framework/src/test/resources/ControllerImplemented2Interfaces.java
@@ -1,20 +1,13 @@
package io;
import io.fabric8.kubernetes.client.CustomResource;
-import io.fabric8.kubernetes.client.CustomResourceDoneable;
-import io.javaoperatorsdk.operator.api.*;
-import io.fabric8.kubernetes.api.model.Secret;
-import io.fabric8.kubernetes.api.model.SecretBuilder;
-import io.fabric8.kubernetes.client.KubernetesClient;
-import org.apache.commons.lang3.RandomStringUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import java.io.Serializable;
-import static java.lang.String.format;
-
@Controller(crdName = "test.crd")
public class ControllerImplemented2Interfaces implements Serializable, ResourceController {
diff --git a/operator-framework/src/test/resources/ControllerImplementedIntermediateAbstractClass.java b/operator-framework/src/test/resources/ControllerImplementedIntermediateAbstractClass.java
index 9850816e7d..7b0807bf81 100644
--- a/operator-framework/src/test/resources/ControllerImplementedIntermediateAbstractClass.java
+++ b/operator-framework/src/test/resources/ControllerImplementedIntermediateAbstractClass.java
@@ -1,20 +1,11 @@
package io;
-import io.fabric8.kubernetes.client.CustomResource;
-import io.fabric8.kubernetes.client.CustomResourceDoneable;
-import io.javaoperatorsdk.operator.api.*;
-import io.fabric8.kubernetes.api.model.Secret;
-import io.fabric8.kubernetes.api.model.SecretBuilder;
-import io.fabric8.kubernetes.client.KubernetesClient;
-import org.apache.commons.lang3.RandomStringUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import java.io.Serializable;
-import static java.lang.String.format;
-
@Controller(crdName = "test.crd")
public class ControllerImplementedIntermediateAbstractClass extends AbstractController implements Serializable {
diff --git a/samples/common/src/main/java/io/javaoperatorsdk/operator/sample/CustomServiceController.java b/samples/common/src/main/java/io/javaoperatorsdk/operator/sample/CustomServiceController.java
index 2b07bcabd3..61fa4f9c98 100644
--- a/samples/common/src/main/java/io/javaoperatorsdk/operator/sample/CustomServiceController.java
+++ b/samples/common/src/main/java/io/javaoperatorsdk/operator/sample/CustomServiceController.java
@@ -3,7 +3,11 @@
import io.fabric8.kubernetes.api.model.ServicePort;
import io.fabric8.kubernetes.api.model.ServiceSpec;
import io.fabric8.kubernetes.client.KubernetesClient;
-import io.javaoperatorsdk.operator.api.*;
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import java.util.Collections;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/samples/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/SchemaController.java b/samples/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/SchemaController.java
index f93217a894..d4bef70978 100644
--- a/samples/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/SchemaController.java
+++ b/samples/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/SchemaController.java
@@ -5,7 +5,11 @@
import io.fabric8.kubernetes.api.model.Secret;
import io.fabric8.kubernetes.api.model.SecretBuilder;
import io.fabric8.kubernetes.client.KubernetesClient;
-import io.javaoperatorsdk.operator.api.*;
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
diff --git a/samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/TomcatController.java b/samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/TomcatController.java
index 28f1161c58..6193697ff9 100644
--- a/samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/TomcatController.java
+++ b/samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/TomcatController.java
@@ -5,13 +5,21 @@
import io.fabric8.kubernetes.api.model.Service;
import io.fabric8.kubernetes.api.model.apps.Deployment;
import io.fabric8.kubernetes.api.model.apps.DoneableDeployment;
-import io.fabric8.kubernetes.client.*;
+import io.fabric8.kubernetes.client.CustomResourceDoneable;
+import io.fabric8.kubernetes.client.CustomResourceList;
+import io.fabric8.kubernetes.client.KubernetesClient;
+import io.fabric8.kubernetes.client.KubernetesClientException;
+import io.fabric8.kubernetes.client.Watcher;
import io.fabric8.kubernetes.client.dsl.MixedOperation;
import io.fabric8.kubernetes.client.dsl.Resource;
import io.fabric8.kubernetes.client.dsl.RollableScalableResource;
import io.fabric8.kubernetes.client.dsl.ServiceResource;
import io.fabric8.kubernetes.client.utils.Serialization;
-import io.javaoperatorsdk.operator.api.*;
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
diff --git a/samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/WebappController.java b/samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/WebappController.java
index bc74c4282b..b6d1f5ba40 100644
--- a/samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/WebappController.java
+++ b/samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/WebappController.java
@@ -3,7 +3,11 @@
import io.fabric8.kubernetes.api.model.Pod;
import io.fabric8.kubernetes.api.model.apps.Deployment;
import io.fabric8.kubernetes.client.KubernetesClient;
-import io.javaoperatorsdk.operator.api.*;
+import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import java.io.ByteArrayOutputStream;
import java.util.List;
import java.util.Objects;
diff --git a/samples/webserver/src/main/java/io/javaoperatorsdk/operator/sample/WebServerController.java b/samples/webserver/src/main/java/io/javaoperatorsdk/operator/sample/WebServerController.java
index cb066417cc..fb1f87da51 100644
--- a/samples/webserver/src/main/java/io/javaoperatorsdk/operator/sample/WebServerController.java
+++ b/samples/webserver/src/main/java/io/javaoperatorsdk/operator/sample/WebServerController.java
@@ -1,6 +1,12 @@
package io.javaoperatorsdk.operator.sample;
-import io.fabric8.kubernetes.api.model.*;
+import io.fabric8.kubernetes.api.model.ConfigMap;
+import io.fabric8.kubernetes.api.model.ConfigMapBuilder;
+import io.fabric8.kubernetes.api.model.ConfigMapVolumeSourceBuilder;
+import io.fabric8.kubernetes.api.model.DoneableConfigMap;
+import io.fabric8.kubernetes.api.model.DoneableService;
+import io.fabric8.kubernetes.api.model.ObjectMetaBuilder;
+import io.fabric8.kubernetes.api.model.Service;
import io.fabric8.kubernetes.api.model.apps.Deployment;
import io.fabric8.kubernetes.api.model.apps.DoneableDeployment;
import io.fabric8.kubernetes.client.KubernetesClient;
@@ -8,8 +14,11 @@
import io.fabric8.kubernetes.client.dsl.RollableScalableResource;
import io.fabric8.kubernetes.client.dsl.ServiceResource;
import io.fabric8.kubernetes.client.utils.Serialization;
-import io.javaoperatorsdk.operator.api.*;
import io.javaoperatorsdk.operator.api.Context;
+import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
+import io.javaoperatorsdk.operator.api.ResourceController;
+import io.javaoperatorsdk.operator.api.UpdateControl;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
diff --git a/spring-boot-starter/src/test/java/io/javaoperatorsdk/operator/springboot/starter/TestController.java b/spring-boot-starter/src/test/java/io/javaoperatorsdk/operator/springboot/starter/TestController.java
index ea8442d8d9..0c26fc2391 100644
--- a/spring-boot-starter/src/test/java/io/javaoperatorsdk/operator/springboot/starter/TestController.java
+++ b/spring-boot-starter/src/test/java/io/javaoperatorsdk/operator/springboot/starter/TestController.java
@@ -1,9 +1,9 @@
package io.javaoperatorsdk.operator.springboot.starter;
import io.fabric8.kubernetes.client.CustomResource;
-import io.javaoperatorsdk.operator.api.*;
import io.javaoperatorsdk.operator.api.Context;
import io.javaoperatorsdk.operator.api.Controller;
+import io.javaoperatorsdk.operator.api.DeleteControl;
import io.javaoperatorsdk.operator.api.ResourceController;
import io.javaoperatorsdk.operator.api.UpdateControl;
import org.springframework.stereotype.Component;