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

nl.tno.bim.nmd.services.NmdDataService Maven / Gradle / Ivy

The newest version!
package nl.tno.bim.nmd.services;

import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Set;

import nl.tno.bim.nmd.domain.NlsfbCode;
import nl.tno.bim.nmd.domain.NmdElement;
import nl.tno.bim.nmd.domain.NmdProductCard;
import nl.tno.bim.nmd.domain.NmdProfileSet;

/**
 * Standard interface to provide material data from the source to the user.
 * 
 * @author vijj
 *
 */
public interface NmdDataService {

	void login();

	void logout();
	
	Boolean getIsConnected();

	void preLoadData();
	
	Calendar getRequestDate();

	void setRequestDate(Calendar newDate);

	List getAllElements();
			
	List getData();

	/**
	 * Get the Profiles sets belonging to a list of product cards
	 * @param ids Product card ids to get the profile sets for.
	 * @return a map of profilesetID - profileset object combinations
	 */
	HashMap getProfileSetsByIds(List ids);
	
	/**
	 * Get the product cards linked to a single element
	 * @param element NMDElement to match product cards on
	 * @return a list of product cards
	 */
	List getProductsForElement(NmdElement element);
	
	/**
	 * Get the product cards matching the product card id
	 * @param ids
	 * @return a list of product cards
	 */
	List getProductCardsByIds(List ids);
	
	/**
	 * Get any product cards that fall within a NLsfb code category
	 * @param codes list of NLsfb codes
	 * @return a list of product card objects
	 */
	List getProductsForNLsfbCodes(Set codes);
	List getElementsForNLsfbCodes(Set codes); 

	Boolean getAdditionalProfileDataForCard(NmdProductCard c);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy