e8d2d7bb0b398de2c1b5594aac490afd11719c24
[marc4j.git] / src / org / marc4j / samples / CheckAgencyExample.java
1 // $Id: CheckAgencyExample.java,v 1.1 2006/08/04 12:39:58 bpeters Exp $\r
2 /**\r
3  * Copyright (C) 2002-2006 Bas Peters\r
4  *\r
5  * This file is part of MARC4J\r
6  *\r
7  * MARC4J is free software; you can redistribute it and/or\r
8  * modify it under the terms of the GNU Lesser General Public \r
9  * License as published by the Free Software Foundation; either \r
10  * version 2.1 of the License, or (at your option) any later version.\r
11  *\r
12  * MARC4J is distributed in the hope that it will be useful,\r
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\r
15  * Lesser General Public License for more details.\r
16  *\r
17  * You should have received a copy of the GNU Lesser General Public \r
18  * License along with MARC4J; if not, write to the Free Software\r
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r
20  */\r
21 package org.marc4j.samples;\r
22 \r
23 import java.io.InputStream;\r
24 import java.util.List;\r
25 \r
26 import org.marc4j.MarcReader;\r
27 import org.marc4j.MarcStreamReader;\r
28 import org.marc4j.marc.DataField;\r
29 import org.marc4j.marc.Record;\r
30 \r
31 /**\r
32  * Demostrates the use of the find method.\r
33  * \r
34  * @author Bas Peters\r
35  * @version $Revision: 1.1 $\r
36  */\r
37 public class CheckAgencyExample {\r
38 \r
39     public static void main(String args[]) throws Exception {\r
40 \r
41         InputStream input = ReadMarcExample.class\r
42                 .getResourceAsStream("resources/summerland.mrc");\r
43 \r
44         MarcReader reader = new MarcStreamReader(input);\r
45         while (reader.hasNext()) {\r
46             Record record = reader.next();\r
47 \r
48             // check if the cataloging agency is DLC\r
49             List result = record.find("040", "DLC");\r
50             if (result.size() > 0)\r
51                 System.out.println("Agency for this record is DLC");\r
52 \r
53             // there is no specific find for a specific subfield\r
54             // so to check if it is the orignal cataloging agency\r
55             DataField field = (DataField) result.get(0);\r
56             String agency = field.getSubfield('a').getData();\r
57             if (agency.matches("DLC"))\r
58                 System.out.println("DLC is the original agency");\r
59         }\r
60     }\r
61 }\r