Skip to content

Commit da0d83a

Browse files
committed
Fix generics warnings
Make some methods returning non-generic listeners to be method references. Put some <> to let compiler figure it on its own in other places.
1 parent 2008d61 commit da0d83a

13 files changed

+100
-125
lines changed

Diff for: containers/org.eclipse.linuxtools.docker.ui/src/org/eclipse/linuxtools/internal/docker/ui/launch/RunImageMainTab.java

+32-36
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*******************************************************************************
2-
* Copyright (c) 2015, 2023 Red Hat Inc. and others.
3-
*
2+
* Copyright (c) 2015, 2025 Red Hat Inc. and others.
3+
*
44
* This program and the accompanying materials are made
55
* available under the terms of the Eclipse Public License 2.0
66
* which is available at https://www.eclipse.org/legal/epl-2.0/
@@ -22,7 +22,7 @@
2222
import org.eclipse.core.databinding.DataBindingContext;
2323
import org.eclipse.core.databinding.beans.typed.BeanProperties;
2424
import org.eclipse.core.databinding.observable.value.IObservableValue;
25-
import org.eclipse.core.databinding.observable.value.IValueChangeListener;
25+
import org.eclipse.core.databinding.observable.value.ValueChangeEvent;
2626
import org.eclipse.core.databinding.validation.IValidator;
2727
import org.eclipse.core.databinding.validation.ValidationStatus;
2828
import org.eclipse.core.runtime.CoreException;
@@ -124,13 +124,13 @@ public void createControl(Composite parent) {
124124
ImageRunSelectionModel.SELECTED_CONNECTION_NAME)
125125
.observe(model);
126126
connectionSelectionObservable
127-
.addValueChangeListener(onConnectionSelectionChange());
127+
.addValueChangeListener(this::connectionSelectionChange);
128128
final IObservableValue imageSelectionObservable = BeanProperties
129129
.value(ImageRunSelectionModel.class,
130130
ImageRunSelectionModel.SELECTED_IMAGE_NAME)
131131
.observe(model);
132132
imageSelectionObservable
133-
.addValueChangeListener(onImageSelectionChange());
133+
.addValueChangeListener(this::imageSelectionChange);
134134
}
135135
setControl(container);
136136
}
@@ -316,40 +316,36 @@ private IContentProposalProvider getImageNameContentProposalProvider(
316316
};
317317
}
318318

319-
private IValueChangeListener onImageSelectionChange() {
320-
return event -> {
321-
final IDockerImage selectedImage = model.getSelectedImage();
322-
// skip if the selected image does not exist in the local Docker
323-
// host
324-
if (selectedImage == null) {
325-
model.setExposedPorts(new ArrayList<>());
326-
return;
327-
}
328-
findImageInfo(selectedImage);
329-
volumesModel.setSelectedImage(selectedImage);
330-
};
319+
private void imageSelectionChange(@SuppressWarnings("unused") ValueChangeEvent<?> e) {
320+
final IDockerImage selectedImage = model.getSelectedImage();
321+
// skip if the selected image does not exist in the local Docker
322+
// host
323+
if (selectedImage == null) {
324+
model.setExposedPorts(new ArrayList<>());
325+
return;
326+
}
327+
findImageInfo(selectedImage);
328+
volumesModel.setSelectedImage(selectedImage);
331329
}
332330

333-
private IValueChangeListener onConnectionSelectionChange() {
334-
return event -> {
335-
// do this first as we might return and not reset connection
336-
networkModel.setConnection(model.getSelectedConnection());
337-
IDockerImage selectedImage = model.getSelectedImage();
338-
// skip if the selected image does not exist in the local Docker
339-
// host
340-
if (selectedImage == null) {
341-
List<String> imageNames = model.getImageNames();
342-
if (imageNames.size() > 0) {
343-
model.setSelectedImageName(imageNames.get(0));
344-
selectedImage = model.getSelectedImage();
345-
} else {
346-
model.setExposedPorts(new ArrayList<>());
347-
return;
348-
}
331+
private void connectionSelectionChange(ValueChangeEvent<?> e) {
332+
// do this first as we might return and not reset connection
333+
networkModel.setConnection(model.getSelectedConnection());
334+
IDockerImage selectedImage = model.getSelectedImage();
335+
// skip if the selected image does not exist in the local Docker
336+
// host
337+
if (selectedImage == null) {
338+
List<String> imageNames = model.getImageNames();
339+
if (imageNames.size() > 0) {
340+
model.setSelectedImageName(imageNames.get(0));
341+
selectedImage = model.getSelectedImage();
342+
} else {
343+
model.setExposedPorts(new ArrayList<>());
344+
return;
349345
}
350-
findImageInfo(selectedImage);
351-
volumesModel.setSelectedImage(selectedImage);
352-
};
346+
}
347+
findImageInfo(selectedImage);
348+
volumesModel.setSelectedImage(selectedImage);
353349
}
354350

355351
private static final class FindImageInfoRunnable

Diff for: containers/org.eclipse.linuxtools.docker.ui/src/org/eclipse/linuxtools/internal/docker/ui/launch/RunImageNetworkTab.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*******************************************************************************
2-
* Copyright (c) 2017, 2019 Red Hat Inc. and others.
3-
*
2+
* Copyright (c) 2017, 2025 Red Hat Inc. and others.
3+
*
44
* This program and the accompanying materials are made
55
* available under the terms of the Eclipse Public License 2.0
66
* which is available at https://www.eclipse.org/legal/epl-2.0/
@@ -215,7 +215,7 @@ private void setOtherControl(Control containerControl) {
215215
private Binding bindButton(final Button button, final String strValue) {
216216
return dbc.bindValue(WidgetProperties.widgetSelection().observe(button),
217217
BeanProperties.value(ImageRunNetworkModel.class, ImageRunNetworkModel.NETWORK_MODE).observe(model),
218-
new UpdateValueStrategy() {
218+
new UpdateValueStrategy<>() {
219219
@Override
220220
public Object convert(Object value) {
221221
if (value.equals(Boolean.TRUE)) {
@@ -224,7 +224,7 @@ public Object convert(Object value) {
224224
return null;
225225
}
226226

227-
}, new UpdateValueStrategy() {
227+
}, new UpdateValueStrategy<>() {
228228
@Override
229229
public Object convert(final Object value) {
230230
return value.equals(strValue);

Diff for: containers/org.eclipse.linuxtools.docker.ui/src/org/eclipse/linuxtools/internal/docker/ui/launch/RunImageResourcesTab.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*******************************************************************************
2-
* Copyright (c) 2015, 2019 Red Hat Inc. and others.
3-
*
2+
* Copyright (c) 2015, 2025 Red Hat Inc. and others.
3+
*
44
* This program and the accompanying materials are made
55
* available under the terms of the Eclipse Public License 2.0
66
* which is available at https://www.eclipse.org/legal/epl-2.0/
@@ -201,7 +201,7 @@ private Composite getContainer() {
201201
/**
202202
* Binds the given <code>cpuShares</code> value to the given {@link Button}
203203
* when it is selected.
204-
*
204+
*
205205
* @param button
206206
* the {@link Button} to bind
207207
* @param cpuShares
@@ -214,7 +214,7 @@ private Binding bindButton(final Button button, final long cpuShares) {
214214
.value(ImageRunResourceVolumesVariablesModel.class,
215215
ImageRunResourceVolumesVariablesModel.CPU_SHARE_WEIGHT)
216216
.observe(model),
217-
new UpdateValueStrategy() {
217+
new UpdateValueStrategy<>() {
218218
@Override
219219
public Object convert(Object value) {
220220
if (value.equals(Boolean.TRUE)) {
@@ -223,7 +223,7 @@ public Object convert(Object value) {
223223
return 0l;
224224
}
225225

226-
}, new UpdateValueStrategy() {
226+
}, new UpdateValueStrategy<>() {
227227
@Override
228228
public Object convert(final Object value) {
229229
return value.equals(cpuShares);

Diff for: containers/org.eclipse.linuxtools.docker.ui/src/org/eclipse/linuxtools/internal/docker/ui/launch/RunImageVolumesTab.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (c) 2015, 2023 Red Hat Inc. and others.
2+
* Copyright (c) 2015, 2025 Red Hat Inc. and others.
33
*
44
* This program and the accompanying materials are made
55
* available under the terms of the Eclipse Public License 2.0
@@ -205,7 +205,7 @@ private ICheckStateListener onCheckStateChanged() {
205205
private void bind(final StructuredViewer viewer,
206206
final IObservableList input,
207207
final IBeanValueProperty[] labelProperties) {
208-
final ObservableListContentProvider contentProvider = new ObservableListContentProvider();
208+
final ObservableListContentProvider contentProvider = new ObservableListContentProvider<>();
209209
if (viewer.getInput() != null) {
210210
viewer.setInput(null);
211211
}

Diff for: containers/org.eclipse.linuxtools.docker.ui/src/org/eclipse/linuxtools/internal/docker/ui/wizards/ContainerDataVolumeDialog.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (c) 2015, 2020 Red Hat Inc. and others.
2+
* Copyright (c) 2015, 2025 Red Hat Inc. and others.
33
*
44
* This program and the accompanying materials are made
55
* available under the terms of the Eclipse Public License 2.0
@@ -310,7 +310,7 @@ private Binding bindButton(final Button button, final MountType mountType,
310310
return dbc.bindValue(WidgetProperties.widgetSelection().observe(button),
311311
BeanProperties.value(DataVolumeModel.class,
312312
DataVolumeModel.MOUNT_TYPE).observe(model),
313-
new UpdateValueStrategy() {
313+
new UpdateValueStrategy<>() {
314314
@Override
315315
public Object convert(Object value) {
316316
if (value.equals(Boolean.TRUE)) {
@@ -327,7 +327,7 @@ private void setEnabled(final Control[] controls,
327327
control.setEnabled(enabled);
328328
}
329329
}
330-
}, new UpdateValueStrategy() {
330+
}, new UpdateValueStrategy<>() {
331331
@Override
332332
public Object convert(final Object value) {
333333
if (mountType.equals(value)) {

Diff for: containers/org.eclipse.linuxtools.docker.ui/src/org/eclipse/linuxtools/internal/docker/ui/wizards/ContainerEnvironmentVariableDialog.java

+6-10
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*******************************************************************************
2-
* Copyright (c) 2015, 2018 Red Hat Inc. and others.
3-
*
2+
* Copyright (c) 2015, 2025 Red Hat Inc. and others.
3+
*
44
* This program and the accompanying materials are made
55
* available under the terms of the Eclipse Public License 2.0
66
* which is available at https://www.eclipse.org/legal/epl-2.0/
@@ -15,7 +15,7 @@
1515

1616
import org.eclipse.core.databinding.DataBindingContext;
1717
import org.eclipse.core.databinding.beans.typed.BeanProperties;
18-
import org.eclipse.core.databinding.observable.value.IValueChangeListener;
18+
import org.eclipse.core.databinding.observable.value.ValueChangeEvent;
1919
import org.eclipse.jface.databinding.swt.ISWTObservableValue;
2020
import org.eclipse.jface.databinding.swt.typed.WidgetProperties;
2121
import org.eclipse.jface.dialogs.Dialog;
@@ -122,17 +122,13 @@ protected Control createDialogArea(Composite parent) {
122122
EnvironmentVariableModel.VALUE).observe(model));
123123

124124
variableNameObservable
125-
.addValueChangeListener(onEnvironmentVariableSettingsChanged());
125+
.addValueChangeListener(this::validateInput);
126126
variableValueObservable
127-
.addValueChangeListener(onEnvironmentVariableSettingsChanged());
127+
.addValueChangeListener(this::validateInput);
128128
return container;
129129
}
130130

131-
private IValueChangeListener onEnvironmentVariableSettingsChanged() {
132-
return event -> validateInput();
133-
}
134-
135-
private void validateInput() {
131+
private void validateInput(@SuppressWarnings("unused") ValueChangeEvent<?> event) {
136132
final String variableName = model.getName();
137133
final String variableValue = model.getValue();
138134
if (variableName == null || variableName.isEmpty()

Diff for: containers/org.eclipse.linuxtools.docker.ui/src/org/eclipse/linuxtools/internal/docker/ui/wizards/ContainerLabelVariableDialog.java

+6-10
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*******************************************************************************
2-
* Copyright (c) 2015, 2018 Red Hat Inc. and others.
3-
*
2+
* Copyright (c) 2015, 2025 Red Hat Inc. and others.
3+
*
44
* This program and the accompanying materials are made
55
* available under the terms of the Eclipse Public License 2.0
66
* which is available at https://www.eclipse.org/legal/epl-2.0/
@@ -15,7 +15,7 @@
1515

1616
import org.eclipse.core.databinding.DataBindingContext;
1717
import org.eclipse.core.databinding.beans.typed.BeanProperties;
18-
import org.eclipse.core.databinding.observable.value.IValueChangeListener;
18+
import org.eclipse.core.databinding.observable.value.ValueChangeEvent;
1919
import org.eclipse.jface.databinding.swt.ISWTObservableValue;
2020
import org.eclipse.jface.databinding.swt.typed.WidgetProperties;
2121
import org.eclipse.jface.dialogs.Dialog;
@@ -122,17 +122,13 @@ protected Control createDialogArea(Composite parent) {
122122
LabelVariableModel.VALUE).observe(model));
123123

124124
variableNameObservable
125-
.addValueChangeListener(onLabelVariableSettingsChanged());
125+
.addValueChangeListener(this::validateInput);
126126
variableValueObservable
127-
.addValueChangeListener(onLabelVariableSettingsChanged());
127+
.addValueChangeListener(this::validateInput);
128128
return container;
129129
}
130130

131-
private IValueChangeListener onLabelVariableSettingsChanged() {
132-
return event -> validateInput();
133-
}
134-
135-
private void validateInput() {
131+
private void validateInput(@SuppressWarnings("unused") ValueChangeEvent<?> event) {
136132
final String variableName = model.getName();
137133
if (variableName == null || variableName.isEmpty()) {
138134
} else {

Diff for: containers/org.eclipse.linuxtools.docker.ui/src/org/eclipse/linuxtools/internal/docker/ui/wizards/ContainerLinkDialog.java

+7-11
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*******************************************************************************
2-
* Copyright (c) 2015, 2019 Red Hat Inc. and others.
3-
*
2+
* Copyright (c) 2015, 2025 Red Hat Inc. and others.
3+
*
44
* This program and the accompanying materials are made
55
* available under the terms of the Eclipse Public License 2.0
66
* which is available at https://www.eclipse.org/legal/epl-2.0/
@@ -19,7 +19,7 @@
1919

2020
import org.eclipse.core.databinding.DataBindingContext;
2121
import org.eclipse.core.databinding.beans.typed.BeanProperties;
22-
import org.eclipse.core.databinding.observable.value.IValueChangeListener;
22+
import org.eclipse.core.databinding.observable.value.ValueChangeEvent;
2323
import org.eclipse.jface.databinding.swt.ISWTObservableValue;
2424
import org.eclipse.jface.databinding.swt.typed.WidgetProperties;
2525
import org.eclipse.jface.dialogs.Dialog;
@@ -167,15 +167,11 @@ public void insertControlContents(Control control,
167167

168168
dbc.bindValue(containerAliasObservable, BeanProperties
169169
.value(ContainerLinkDialogModel.class, ContainerLinkDialogModel.CONTAINER_ALIAS).observe(model));
170-
containerNameObservable.addValueChangeListener(onContainerLinkSettingsChanged());
171-
containerAliasObservable.addValueChangeListener(onContainerLinkSettingsChanged());
170+
containerNameObservable.addValueChangeListener(this::validateInput);
171+
containerAliasObservable.addValueChangeListener(this::validateInput);
172172
return container;
173173
}
174174

175-
private IValueChangeListener onContainerLinkSettingsChanged() {
176-
return event -> validateInput();
177-
}
178-
179175
public String getContainerName() {
180176
return model.getContainerName();
181177
}
@@ -187,7 +183,7 @@ public String getContainerAlias() {
187183
/**
188184
* Creates an {@link IContentProposalProvider} to propose
189185
* {@link IDockerContainer} names based on the current text.
190-
*
186+
*
191187
* @param items
192188
* @return
193189
*/
@@ -205,7 +201,7 @@ private IContentProposalProvider getContainerNameContentProposalProvider(
205201
};
206202
}
207203

208-
private void validateInput() {
204+
private void validateInput(@SuppressWarnings("unused") ValueChangeEvent<?> e) {
209205
final String selectedContainerName = model.getContainerName();
210206
final Object[] containerNames = model.getContainerNames().toArray();
211207
final String containerAlias = model.getContainerAlias();

Diff for: containers/org.eclipse.linuxtools.docker.ui/src/org/eclipse/linuxtools/internal/docker/ui/wizards/ContainerPortDialog.java

+7-11
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*******************************************************************************
2-
* Copyright (c) 2015, 2018 Red Hat Inc. and others.
3-
*
2+
* Copyright (c) 2015, 2025 Red Hat Inc. and others.
3+
*
44
* This program and the accompanying materials are made
55
* available under the terms of the Eclipse Public License 2.0
66
* which is available at https://www.eclipse.org/legal/epl-2.0/
@@ -15,7 +15,7 @@
1515

1616
import org.eclipse.core.databinding.DataBindingContext;
1717
import org.eclipse.core.databinding.beans.typed.BeanProperties;
18-
import org.eclipse.core.databinding.observable.value.IValueChangeListener;
18+
import org.eclipse.core.databinding.observable.value.ValueChangeEvent;
1919
import org.eclipse.jface.databinding.swt.ISWTObservableValue;
2020
import org.eclipse.jface.databinding.swt.typed.WidgetProperties;
2121
import org.eclipse.jface.dialogs.Dialog;
@@ -147,17 +147,13 @@ protected Control createDialogArea(Composite parent) {
147147
dbc.bindValue(hostPortObservable, BeanProperties
148148
.value(ContainerPortDialogModel.class, ContainerPortDialogModel.HOST_PORT).observe(model));
149149

150-
containerPortObservable.addValueChangeListener(onContainerPortSettingsChanged());
151-
hostPortObservable.addValueChangeListener(onContainerPortSettingsChanged());
152-
hostAddressObservable.addValueChangeListener(onContainerPortSettingsChanged());
150+
containerPortObservable.addValueChangeListener(this::validateInput);
151+
hostPortObservable.addValueChangeListener(this::validateInput);
152+
hostAddressObservable.addValueChangeListener(this::validateInput);
153153
return container;
154154
}
155155

156-
private IValueChangeListener onContainerPortSettingsChanged() {
157-
return event -> validateInput();
158-
}
159-
160-
private void validateInput() {
156+
private void validateInput(@SuppressWarnings("unused") ValueChangeEvent<?> e) {
161157
final String containerPort = model.getContainerPort();
162158
if (containerPort == null || containerPort.isEmpty()) {
163159
setOkButtonEnabled(false);

0 commit comments

Comments
 (0)