10. publicGame(){
}
publicGame(String dataFileName)throwsIOException{
this.fileName = dataFileName;
this.loadFileData(dataFileName);
}
//searches the game elements for the input criteria
publicString searchGame(String searchInput){
String result ="";
ArrayList<Cave> printElements =newArrayList<Cave>();
printElements.addAll(caveElements.values());
printElements.addAll(loners);
for(Cave ge : printElements){
if(ge.index !=0&& searchInput !=null&&Integer.toString(ge.ind
ex).equals(searchInput)){
result += ge.toString()+"n";
}elseif(ge.type !=null&& searchInput !=null&& ge.type.toLowe
rCase().equals(searchInput.toLowerCase())){
result += ge.toString()+"n";
}elseif(ge.name !=null&& searchInput !=null&& ge.name.toLo
werCase().equals(searchInput.toLowerCase())){
result += ge.toString()+"n";
}
}
return result;
}
publicString printAll(){
String output ="";
ArrayList<Cave> printElements =newArrayList<Cave>();
printElements.addAll(caveElements.values());
for(Cave ge : printElements){
if(ge instanceofParty){
11. Party p =(Party) ge;
output += p.toString();
}
}
output +="n-----------------nLonersn-----------------n";
for(Cave ge : loners){
output +="n"+ ge.toString();
}
return output;
}
publicvoid setGameElements(String fileName)throwsIOExcepti
on{
this.loadFileData(fileName);
}
publicvoid setFileName(String fileName){
this.fileName = fileName;
}
publicString getFileName(){
returnthis.fileName;
}
//Prints the elements, sorted by the critera and the object they b
elong to
publicString printSortedElements(String object){
String result ="";
Set elementSet = caveElements.entrySet();
Iterator i = elementSet.iterator();
while(i.hasNext()){
Map.Entry g =(Map.Entry)i.next();
Cave ge =(Cave)g.getValue();
if(ge instanceofParty){
28. person Thomas 50001 10000 clerk
aSPab.txt
// File: aSPab.txt
// Data file for SeaPort projects
// Date: Sat Jul 09 17:59:17 EDT 2016
// port name index parent(null)
// port <string> <int> <int>
port Xiangtan 10003 0
port Port_Des_Galets 10001 0
port Wuchun 10004 0
port Majunga 10002 0
port Bangpakong 10000 0
// dock name index parent(port)
// dock <string> <int> <int>
dock Pier_30 20030 10003 40048
dock Pier_24 20024 10003 30017
dock Pier_21 20021 10002 30014
dock Pier_31 20031 10003 40049
dock Pier_9 20009 10001 30008
dock Pier_27 20027 10003 40045
dock Pier_3 20003 10000 30003
dock Pier_33 20033 10004 30021
dock Pier_10 20010 10001 30009
dock Pier_26 20026 10003 30019
dock Pier_1 20001 10000 30001
dock Pier_8 20008 10001 30007
dock Pier_5 20005 10000 40000
dock Pier_20 20020 10002 30013
dock Pier_23 20023 10003 30016
dock Pier_35 20035 10004 30023
dock Pier_13 20013 10001 40017
dock Pier_16 20016 10001 40020
29. dock Pier_17 20017 10002 30010
dock Pier_32 20032 10004 30020
dock Pier_11 20011 10001 40015
dock Pier_0 20000 10000 30000
dock Pier_2 20002 10000 30002
dock Pier_19 20019 10002 30012
dock Pier_4 20004 10000 30004
dock Pier_18 20018 10002 30011
dock Pier_36 20036 10004 30024
dock Pier_22 20022 10003 30015
dock Pier_25 20025 10003 30018
dock Pier_37 20037 10004 40060
dock Pier_14 20014 10001 40018
dock Pier_29 20029 10003 40047
dock Pier_12 20012 10001 40016
dock Pier_7 20007 10001 30006
dock Pier_28 20028 10003 40046
dock Pier_15 20015 10001 40019
dock Pier_34 20034 10004 30022
dock Pier_6 20006 10001 30005
// cship name index parent(dock/port) weight length width draft
cargoWeight cargoVolume cargoValue
// cship <string> <int> <int> <double> <double> <double>
<double> <double> <double> <double>
pship Shinto 30014 20021 172.82 233.60 106.32
25.42 1492 496 496
pship Poached 30021 20033 96.01 476.75 127.37
23.03 1247 607 607
pship Forbode 30012 20019 57.35 293.08 35.84
33.74 2608 1095 1095
pship Odorant 30024 20036 110.51 185.17 104.05
38.08 710 1030 355
pship Aspheric 30001 20001 232.37 340.63 100.13
16.05 41 723 20
pship Jollity 30020 20032 83.65 285.79 71.84 35.81
61. person Ramona 50065 10006 electrician
person Jeannette 50066 10006 craneOperator
person Geneva 50027 10002 driver
person Lionel 50006 10000 stevedore
person Janis 50063 10006 captain
person Travis 50010 10001 inspector
person Traci 50023 10002 mate
person Leah 50042 10004 crew
person Kelvin 50001 10000 stevedore
person Shari 50035 10003 cleaner
person Jean 50020 10002 painter
person Krystal 50000 10000 mate
person Irvin 50031 10003 janitor
person Renee 50021 10002 electrician
person Wanda 50002 10000 mechanic
person Tina 50050 10005 electrician
person Joann 50019 10002 craneOperator
person Ira 50059 10005 cleaner
person Craig 50008 10001 electrician
person Angel 50032 10003 carpenter
person Lindsey 50046 10004 carpenter
person Sandra 50009 10001 crew
person Cora 50054 10005 craneOperator
person Eloise 50047 10004 crew
person Maryann 50043 10004 inspector
person Lila 50024 10002 electrician
person Tricia 50041 10004 electrician
person Darnell 50056 10005 inspector
person Maria 50017 10001 clerk
person Rene 50058 10005 painter
person Natasha 50051 10005 crew
person Erik 50070 10007 painter
person Marty 50013 10001 driver
person Christie 50062 10006 driver
person Rosie 50003 10000 cleaner
person Tricia 50029 10003 craneOperator
62. person Victoria 50072 10007 cleaner
person Valerie 50073 10007 captain
person Jerome 50064 10006 engineer
person Luther 50048 10004 captain
person Jacob 50057 10005 driver
person Jeanette 50055 10005 engineer
person Lonnie 50022 10002 cleaner
person Veronica 50068 10007 stevedore
person Ricky 50049 10004 mate
person Anita 50069 10007 driver
person Kate 50060 10005 clerk
person Gwen 50061 10005 driver
person Milton 50037 10003 cleaner
person Noel 50012 10001 engineer
person Bobbie 50052 10005 craneOperator
person Amber 50039 10004 mechanic
person Paula 50038 10003 inspector
person Andy 50067 10006 janitor
person Maxine 50034 10003 inspector
person Eleanor 50025 10002 carpenter
person Felicia 50044 10004 carpenter
person Olive 50016 10001 stevedore
person Garrett 50045 10004 stevedore
person Angelica 50033 10003 painter
person Alberta 50014 10001 captain
person Bennie 50036 10003 mate
person Lynn 50026 10002 captain
person Patty 50053 10005 carpenter
person Omar 50004 10000 stevedore
person Jane 50007 10001 craneOperator
person Lynne 50018 10001 inspector
// job name index parent duration [skill]+ (one or more,
matches skill in person, may repeat)
// job <string> <int> <int> <double> [<string>]+
job Job_86_85_12 60264 30093 109.72