package org.ovirt.engine.ui.common.widget.profile; import org.ovirt.engine.core.common.businessentities.network.VnicProfileView; import org.ovirt.engine.ui.common.CommonApplicationMessages; import org.ovirt.engine.ui.common.CommonApplicationTemplates; import org.ovirt.engine.ui.common.gin.AssetProvider; import org.ovirt.engine.ui.common.widget.editor.ListModelTypeAheadListBoxEditor; public class ProfileEditor extends ListModelTypeAheadListBoxEditor<VnicProfileView> { private static final CommonApplicationTemplates templates = AssetProvider.getTemplates(); private static final CommonApplicationMessages messages = AssetProvider.getMessages(); public ProfileEditor() { super( new ListModelTypeAheadListBoxEditor.NullSafeSuggestBoxRenderer<VnicProfileView>() { @Override public String getReplacementStringNullSafe(VnicProfileView profile) { return (profile == VnicProfileView.EMPTY) ? messages.emptyProfile().asString() : messages.profileAndNetworkSelected(profile.getName(), profile.getNetworkName()) .asString(); } @Override public String getDisplayStringNullSafe(VnicProfileView profile) { if (profile == VnicProfileView.EMPTY) { return templates.typeAheadNameDescription(messages.emptyProfile().asString(), messages.emptyProfileDescription().asString()).asString(); } String profileDescription = profile.getDescription(); String profileAndNetwork = messages.profileAndNetwork(profile.getName(), profile.getNetworkName()).asString(); return templates.typeAheadNameDescription(profileAndNetwork, profileDescription != null ? profileDescription : "").asString(); //$NON-NLS-1$ } }, false); } }