@@ -175,6 +175,68 @@ public void reconciliationSubmitted(Object resource, Object retryInfo, Map<Strin
175175 """ ));
176176 }
177177
178+ @ Test
179+ void removesMonitorSizeOfFromImplementation () {
180+ rewriteRun (
181+ // Stub for the Metrics interface
182+ // language=java
183+ java (
184+ """
185+ package io.javaoperatorsdk.operator.api.monitoring;
186+
187+ import java.util.Map;
188+
189+ public interface Metrics {
190+ default void eventReceived(Object event, Map<String, Object> metadata) {}
191+ default Map<String, Object> monitorSizeOf(Map<String, Object> map) { return map; }
192+ }
193+ """ ,
194+ """
195+ package io.javaoperatorsdk.operator.api.monitoring;
196+
197+ import java.util.Map;
198+
199+ public interface Metrics {
200+ default void eventReceived(Object event, Map<String, Object> metadata) {}
201+ }
202+ """ ),
203+ // Implementation that overrides monitorSizeOf
204+ // language=java
205+ java (
206+ """
207+ package com.example;
208+
209+ import java.util.Map;
210+ import io.javaoperatorsdk.operator.api.monitoring.Metrics;
211+
212+ public class MyMetrics implements Metrics {
213+ @Override
214+ public void eventReceived(Object event, Map<String, Object> metadata) {
215+ System.out.println("event");
216+ }
217+
218+ @Override
219+ public Map<String, Object> monitorSizeOf(Map<String, Object> map) {
220+ System.out.println("monitoring size");
221+ return map;
222+ }
223+ }
224+ """ ,
225+ """
226+ package com.example;
227+
228+ import java.util.Map;
229+ import io.javaoperatorsdk.operator.api.monitoring.Metrics;
230+
231+ public class MyMetrics implements Metrics {
232+ @Override
233+ public void eventReceived(Object event, Map<String, Object> metadata) {
234+ System.out.println("event");
235+ }
236+ }
237+ """ ));
238+ }
239+
178240 @ Test
179241 void addsRetryInfoParameterToReconciliationFinished () {
180242 rewriteRun (
0 commit comments