blob: 47e03009561d12706b2c35dc3a98197dd84efeee [file] [log] [blame]
/*
* Copyright (c) 2001, 2018 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
* http://www.eclipse.org/legal/epl-2.0.
*
* This Source Code may also be made available under the following Secondary
* Licenses when the conditions for such availability set forth in the
* Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
* version 2 with the GNU Classpath Exception, which is available at
* https://www.gnu.org/software/classpath/license.html.
*
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
*/
package com.sun.s1asdev.jdbc.stress1.client;
import java.util.Iterator;
import java.util.ArrayList;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
import com.sun.s1asdev.jdbc.stress1.ejb.*;
import com.sun.s1asdev.jdbc.stress1.util.*;
import com.sun.ejte.ccl.reporter.SimpleReporterAdapter;
public class RosterClientThread extends Thread {
int clientID_;
boolean runFlag = true;
Roster myRoster;
private static SimpleReporterAdapter status =
new SimpleReporterAdapter("appserv-tests");
public RosterClientThread( int clientID ) throws Exception {
clientID_ = clientID;
Context initial = new InitialContext();
Object objref = initial.lookup("java:comp/env/ejb/SimpleRoster");
RosterHome home = (RosterHome)
PortableRemoteObject.narrow(objref, RosterHome.class);
myRoster = home.create();
}
public void run() {
int numRan = 0;
int numPassed = 0;
System.out.println("Thread : " +clientID_ + " running");
while( runFlag == true ) {
numRan++;
try {
insertInfo(myRoster);
getSomeInfo(myRoster);
getMoreInfo(myRoster);
numPassed++;
} catch (Exception ex) {
System.out.println( "Failed to run after : " + numPassed );
break;
}
}
System.out.println("Thread: " + clientID_ + " ran: " + numRan +
" passed: " + numPassed );
}
private static void getSomeInfo(Roster myRoster) {
try {
ArrayList playerList;
ArrayList teamList;
ArrayList leagueList;
playerList = myRoster.getPlayersOfTeam("T2");
//printDetailsList(playerList);
teamList = myRoster.getTeamsOfLeague("L1");
//printDetailsList(teamList);
playerList = myRoster.getPlayersByPosition("defender");
//printDetailsList(playerList);
leagueList = myRoster.getLeaguesOfPlayer("P28");
//printDetailsList(leagueList);
status.addStatus("cmp roster:getSomeInfo", status.PASS);
} catch (Exception ex) {
//System.err.println("Caught an exception in getSomeInfo: " +
// ex.toString());
//ex.printStackTrace();
}
}
private static void getMoreInfo(Roster myRoster) {
try {
LeagueDetails leagueDetails;
TeamDetails teamDetails;
PlayerDetails playerDetails;
ArrayList playerList;
ArrayList teamList;
ArrayList leagueList;
ArrayList sportList;
leagueDetails = myRoster.getLeague("L1");
System.out.println(leagueDetails.toString());
System.out.println();
teamDetails = myRoster.getTeam("T3");
System.out.println(teamDetails.toString());
System.out.println();
playerDetails = myRoster.getPlayer("P20");
System.out.println(playerDetails.toString());
System.out.println();
playerList = myRoster.getPlayersOfTeam("T2");
printDetailsList(playerList);
teamList = myRoster.getTeamsOfLeague("L1");
printDetailsList(teamList);
playerList = myRoster.getPlayersByPosition("defender");
playerList = myRoster.getAllPlayers();
playerList = myRoster.getPlayersNotOnTeam();
playerList = myRoster.getPlayersByPositionAndName("power forward",
"Jack Patterson");
playerList = myRoster.getPlayersByCity("Truckee");
playerList = myRoster.getPlayersBySport("Soccer");
playerList = myRoster.getPlayersByLeagueId("L1");
playerList = myRoster.getPlayersByHigherSalary("Ian Carlyle");
playerList = myRoster.getPlayersBySalaryRange(500.00, 800.00);
playerList = myRoster.getPlayersOfTeamCopy("T5");
leagueList = myRoster.getLeaguesOfPlayer("P28");
printDetailsList(leagueList);
sportList = myRoster.getSportsOfPlayer("P28");
printDetailsList(sportList);
status.addStatus("cmp roster:getMoreInfo", status.PASS);
} catch (Exception ex) {
//status.addStatus("cmp roster:getMoreInfo", status.FAIL);
//System.err.println("Caught an exception in getMoreInfo: " +
// ex.toString());
//ex.printStackTrace();
}
}
private static void printDetailsList(ArrayList list) {
Iterator i = list.iterator();
while (i.hasNext()) {
Object details = (Object)i.next();
System.out.println(details.toString());
}
System.out.println();
}
private static void insertInfo(Roster myRoster) {
try {
// Leagues
myRoster.createLeague(new LeagueDetails(
"L1", "Mountain", "Soccer"));
myRoster.createLeague(new LeagueDetails(
"L2", "Valley", "Basketball"));
// Teams
myRoster.createTeamInLeague(new TeamDetails(
"T1", "Honey Bees", "Visalia"), "L1");
myRoster.createTeamInLeague(new TeamDetails(
"T2", "Gophers", "Manteca"), "L1");
myRoster.createTeamInLeague(new TeamDetails(
"T3", "Deer", "Bodie"), "L2");
myRoster.createTeamInLeague(new TeamDetails(
"T4", "Trout", "Truckee"), "L2");
myRoster.createTeamInLeague(new TeamDetails(
"T5", "Crows", "Orland"), "L1");
// Players, Team T1
myRoster.createPlayer(new PlayerDetails(
"P1", "Phil Jones", "goalkeeper", 100.00));
myRoster.addPlayer("P1", "T1");
myRoster.createPlayer(new PlayerDetails(
"P2", "Alice Smith", "defender", 505.00));
myRoster.addPlayer("P2", "T1");
myRoster.createPlayer(new PlayerDetails(
"P3", "Bob Roberts", "midfielder", 65.00));
myRoster.addPlayer("P3", "T1");
myRoster.createPlayer(new PlayerDetails(
"P4", "Grace Phillips", "forward", 100.00));
myRoster.addPlayer("P4", "T1");
myRoster.createPlayer(new PlayerDetails(
"P5", "Barney Bold", "defender", 100.00));
myRoster.addPlayer("P5", "T1");
// Players, Team T2
myRoster.createPlayer(new PlayerDetails(
"P6", "Ian Carlyle", "goalkeeper", 555.00));
myRoster.addPlayer("P6", "T2");
myRoster.createPlayer(new PlayerDetails(
"P7", "Rebecca Struthers", "midfielder", 777.00));
myRoster.addPlayer("P7", "T2");
myRoster.createPlayer(new PlayerDetails(
"P8", "Anne Anderson", "forward", 65.00));
myRoster.addPlayer("P8", "T2");
myRoster.createPlayer(new PlayerDetails(
"P9", "Jan Wesley", "defender", 100.00));
myRoster.addPlayer("P9", "T2");
myRoster.createPlayer(new PlayerDetails(
"P10", "Terry Smithson", "midfielder", 100.00));
myRoster.addPlayer("P10", "T2");
// Players, Team T3
myRoster.createPlayer(new PlayerDetails(
"P11", "Ben Shore", "point guard", 188.00));
myRoster.addPlayer("P11", "T3");
myRoster.createPlayer(new PlayerDetails(
"P12", "Chris Farley", "shooting guard", 577.00));
myRoster.addPlayer("P12", "T3");
myRoster.createPlayer(new PlayerDetails(
"P13", "Audrey Brown", "small forward", 995.00));
myRoster.addPlayer("P13", "T3");
myRoster.createPlayer(new PlayerDetails(
"P14", "Jack Patterson", "power forward", 100.00));
myRoster.addPlayer("P14", "T3");
myRoster.createPlayer(new PlayerDetails(
"P15", "Candace Lewis", "point guard", 100.00));
myRoster.addPlayer("P15", "T3");
// Players, Team T4
myRoster.createPlayer(new PlayerDetails(
"P16", "Linda Berringer", "point guard", 844.00));
myRoster.addPlayer("P16", "T4");
myRoster.createPlayer(new PlayerDetails(
"P17", "Bertrand Morris", "shooting guard", 452.00));
myRoster.addPlayer("P17", "T4");
myRoster.createPlayer(new PlayerDetails(
"P18", "Nancy White", "small forward", 833.00));
myRoster.addPlayer("P18", "T4");
myRoster.createPlayer(new PlayerDetails(
"P19", "Billy Black", "power forward", 444.00));
myRoster.addPlayer("P19", "T4");
myRoster.createPlayer(new PlayerDetails(
"P20", "Jodie James", "point guard", 100.00));
myRoster.addPlayer("P20", "T4");
// Players, Team T5
myRoster.createPlayer(new PlayerDetails(
"P21", "Henry Shute", "goalkeeper", 205.00));
myRoster.addPlayer("P21", "T5");
myRoster.createPlayer(new PlayerDetails(
"P22", "Janice Walker", "defender", 857.00));
myRoster.addPlayer("P22", "T5");
myRoster.createPlayer(new PlayerDetails(
"P23", "Wally Hendricks", "midfielder", 748.00));
myRoster.addPlayer("P23", "T5");
myRoster.createPlayer(new PlayerDetails(
"P24", "Gloria Garber", "forward", 777.00));
myRoster.addPlayer("P24", "T5");
myRoster.createPlayer(new PlayerDetails(
"P25", "Frank Fletcher", "defender", 399.00));
myRoster.addPlayer("P25", "T5");
// Players, no team
myRoster.createPlayer(new PlayerDetails(
"P26", "Hobie Jackson", "pitcher", 582.00));
myRoster.createPlayer(new PlayerDetails(
"P27", "Melinda Kendall", "catcher", 677.00));
// Players, multiple teams
myRoster.createPlayer(new PlayerDetails(
"P28", "Constance Adams", "substitue", 966.00));
myRoster.addPlayer("P28", "T1");
myRoster.addPlayer("P28", "T3");
status.addStatus("cmp roster:insertInfo", status.PASS);
} catch (Exception ex) {
//status.addStatus("cmp roster:insertInfo", status.FAIL);
//System.err.println("Caught an exception in insertInfo: " +
// ex.toString());
//ex.printStackTrace();
}
}
}