1 /*
2 * Copyright (c) 2005 The University of Reading
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 * 3. Neither the name of the University of Reading, nor the names of the
14 * authors or contributors may be used to endorse or promote products
15 * derived from this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28
29 package uk.ac.rdg.resc.jstyx.gridservice.config;
30
31 /***
32 * Class containing information about the input file and streams required by
33 * the service
34 *
35 * @author Jon Blower
36 * $Revision: 465 $
37 * $Date: 2005-11-07 20:59:34 +0000 (Mon, 07 Nov 2005) $
38 * $Log$
39 * Revision 1.1 2005/11/07 20:59:34 jonblower
40 * Refactored SGS config classes to new package
41 *
42 */
43
44 public class SGSInput
45 {
46
47 public static final int STREAM = 0;
48 public static final int FILE = 1;
49 public static final int FILE_FROM_PARAM = 2;
50
51 private String name;
52 private int type;
53
54 public SGSInput(String type, String name) throws SGSConfigException
55 {
56 this.name = name;
57 if (type.equals("stream"))
58 {
59 if (!name.equals("stdin"))
60 {
61 throw new SGSConfigException("The only input stream that is " +
62 "supported is stdin");
63 }
64 this.type = STREAM;
65 }
66 else if (type.equals("file"))
67 {
68 this.type = FILE;
69 }
70 else if (type.equals("fileFromParam"))
71 {
72 this.type = FILE_FROM_PARAM;
73 }
74 else
75 {
76 throw new SGSConfigException("Unknown input type: " + type);
77 }
78 }
79
80 public String getName()
81 {
82 return this.name;
83 }
84
85 public int getType()
86 {
87 return this.type;
88 }
89
90 }