/* * Copyright 2000-2016 Vaadin Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.vaadin.v7.data.util.converter; import java.util.Locale; /** * A converter that wraps another {@link Converter} and reverses source and * target types. * * @param <MODEL> * The source type * @param <PRESENTATION> * The target type * * @author Vaadin Ltd * @since 7.0 * * @deprecated As of 8.0, no direct replacement available. */ @Deprecated public class ReverseConverter<PRESENTATION, MODEL> implements Converter<PRESENTATION, MODEL> { private Converter<MODEL, PRESENTATION> realConverter; /** * Creates a converter from source to target based on a converter that * converts from target to source. * * @param converter * The converter to use in a reverse fashion */ public ReverseConverter(Converter<MODEL, PRESENTATION> converter) { this.realConverter = converter; } /* * (non-Javadoc) * * @see com.vaadin.data.util.converter.Converter#convertToModel(java * .lang.Object, java.util.Locale) */ @Override public MODEL convertToModel(PRESENTATION value, Class<? extends MODEL> targetType, Locale locale) throws ConversionException { return realConverter.convertToPresentation(value, targetType, locale); } /* * (non-Javadoc) * * @see * com.vaadin.data.util.converter.Converter#convertToPresentation(java.lang * .Object, java.util.Locale) */ @Override public PRESENTATION convertToPresentation(MODEL value, Class<? extends PRESENTATION> targetType, Locale locale) throws ConversionException { return realConverter.convertToModel(value, targetType, locale); } /* * (non-Javadoc) * * @see com.vaadin.data.util.converter.Converter#getSourceType() */ @Override public Class<MODEL> getModelType() { return realConverter.getPresentationType(); } /* * (non-Javadoc) * * @see com.vaadin.data.util.converter.Converter#getTargetType() */ @Override public Class<PRESENTATION> getPresentationType() { return realConverter.getModelType(); } }