001/* 002 * jDTAUS Banking API 003 * Copyright (C) 2005 Christian Schulte 004 * <cs@schulte.it> 005 * 006 * This library is free software; you can redistribute it and/or 007 * modify it under the terms of the GNU Lesser General Public 008 * License as published by the Free Software Foundation; either 009 * version 2.1 of the License, or any later version. 010 * 011 * This library is distributed in the hope that it will be useful, 012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 014 * Lesser General Public License for more details. 015 * 016 * You should have received a copy of the GNU Lesser General Public 017 * License along with this library; if not, write to the Free Software 018 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 019 * 020 */ 021package org.jdtaus.banking; 022 023import java.util.Currency; 024import java.util.Date; 025 026/** 027 * Directory holding currency information. 028 * <p>Example: Getting the jDTAUS Banking SPI implementation.<br/><pre> 029 * CurrencyDirectory directory = 030 * (CurrencyDirectory) ContainerFactory.getContainer(). 031 * getObject( CurrencyDirectory.class ); 032 * </pre></p> 033 * 034 * @author <a href="mailto:cs@schulte.it">Christian Schulte</a> 035 * @version $JDTAUS: CurrencyDirectory.java 8661 2012-09-27 11:29:58Z schulte $ 036 * 037 * @see org.jdtaus.core.container.Container 038 */ 039public interface CurrencyDirectory 040{ 041 042 /** 043 * Gets all DTAUS currencies known to the directory for a given date. 044 * 045 * @param date The date to return known currencies for. 046 * 047 * @return All DTAUS currencies known to the directory at {@code date} or an empty array if the directory does not 048 * hold currencies at {@code date}. 049 * 050 * @throws NullPointerException if {@code date} is {@code null}. 051 */ 052 Currency[] getDtausCurrencies( Date date ); 053 054}