All Downloads are FREE. Search and download functionalities are using the official Maven repository.

pl.edu.icm.unity.stdext.attr.FloatingPointAttribute Maven / Gradle / Ivy

Go to download

Standard plugins which are distributed with the system: attribute syntaxes, identity types, credentials

There is a newer version: 4.0.2
Show newest version
/*
 * Copyright (c) 2013 ICM Uniwersytet Warszawski All rights reserved.
 * See LICENCE.txt file for licensing information.
 */
package pl.edu.icm.unity.stdext.attr;

import java.util.List;
import java.util.stream.Collectors;

import com.google.common.collect.Lists;

import pl.edu.icm.unity.base.attribute.Attribute;

/**
 * Helper class allowing to create floating point number attributes easily.
 * @author K. Benedyczak
 */
public class FloatingPointAttribute
{
	public static Attribute of(String name, String groupPath,
			List values, String remoteIdp, String translationProfile)
	{
		return new Attribute(name, FloatingPointAttributeSyntax.ID, groupPath, 
				values, remoteIdp, translationProfile);
	}

	public static Attribute of(String name, String groupPath, List values)
	{
		return new Attribute(name, FloatingPointAttributeSyntax.ID, groupPath, convert(values));
	}
	
	public static Attribute of(String name, String groupPath, Double... values)
	{
		return of(name, groupPath, Lists.newArrayList(values));
	}

	private static List convert(List values)
	{
		FloatingPointAttributeSyntax syntax = new FloatingPointAttributeSyntax();
		return values.stream().
				map(v -> syntax.convertToString(v)).
				collect(Collectors.toList());
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy