Skip to content

Method: convertToAxiomValue(Float)

1: /*
2: * JOPA
3: * Copyright (C) 2024 Czech Technical University in Prague
4: *
5: * This library is free software; you can redistribute it and/or
6: * modify it under the terms of the GNU Lesser General Public
7: * License as published by the Free Software Foundation; either
8: * version 3.0 of the License, or (at your option) any later version.
9: *
10: * This library is distributed in the hope that it will be useful,
11: * but WITHOUT ANY WARRANTY; without even the implied warranty of
12: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13: * Lesser General Public License for more details.
14: *
15: * You should have received a copy of the GNU Lesser General Public
16: * License along with this library.
17: */
18: package cz.cvut.kbss.jopa.oom.converter;
19:
20: public class ToFloatConverter implements ConverterWrapper<Float, Object> {
21:
22: @Override
23: public Object convertToAxiomValue(Float value) {
24: return value;
25: }
26:
27: @Override
28: public Float convertToAttribute(Object value) {
29: assert value != null;
30: assert supportsAxiomValueType(value.getClass());
31: return ((Number) value).floatValue();
32: }
33:
34: @Override
35: public boolean supportsAxiomValueType(Class<?> type) {
36: return Float.class.isAssignableFrom(type) || Long.class.isAssignableFrom(type) || Integer.class
37: .isAssignableFrom(type) || Short.class.isAssignableFrom(type) || Byte.class.isAssignableFrom(type);
38: }
39: }