import com.businessobjects.sdk.plugin.desktop.common.*; import com.businessobjects.sdk.plugin.desktop.enterprisenode.*; import com.businessobjects.sdk.plugin.desktop.service.*; import com.businessobjects.sdk.plugin.desktop.servicecontainer.*; import com.crystaldecisions.sdk.framework.*; import com.crystaldecisions.sdk.occa.infostore.*; import com.crystaldecisions.sdk.plugin.desktop.server.*; import com.crystaldecisions.sdk.exception.SDKException; import com.crystaldecisions.sdk.plugin.desktop.program.*; import java.util.*; import java.io.*; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow; public class ServerServices implements IProgramBase { public void run(IEnterpriseSession enterprisesession,IInfoStore infoStore,String str[]) throws SDKException { System.out.println("Connected to " + enterprisesession.getCMSName() + "CMS"); System.out.println("Using the credentials of " + enterprisesession.getUserInfo().getUserName() ); HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet("new sheet"); HSSFRow rowhead = sheet.createRow((short)0); rowhead.createCell((short) 0).setCellValue("Server Name"); rowhead.createCell((short) 1).setCellValue("Server ID"); rowhead.createCell((short) 2).setCellValue("Server CUID"); rowhead.createCell((short) 3).setCellValue("Server Description"); rowhead.createCell((short) 4).setCellValue("Server State"); rowhead.createCell((short) 5).setCellValue("Server Is Alive"); rowhead.createCell((short) 6).setCellValue("Server Is Disabled"); try { infoStore = (IInfoStore) enterprisesession.getService("", "InfoStore"); int index = 1; if(str.length>0) { System.out.println("The runtime parameters for this app were:"); for(int k=0;k<str.length;k++) { if(str[k] != null) { System.out.println(str[k]); final String SERVERS_QUERY = "Select " + " SI_ID, SI_CUID, SI_PID, SI_SERVER_ID, SI_NAME, " + " SI_SERVER_DESCRIPTOR, SI_DISABLED, SI_SERVER_IS_ALIVE, " + " SI_STATUSINFO, SI_SIA_HOSTNAME, SI_ENTERPRISENODE, " + " SI_CONFIGURED_CONTAINERS, SI_HOSTED_SERVICES, " + " SI_ML_DISPLAY_NAME " + " From " + " CI_SYSTEMOBJECTS " + " Where " + " SI_KIND='Server'"; IInfoObjects serverInfoObjects = infoStore.query(SERVERS_QUERY);
for(Iterator iserver = serverInfoObjects.iterator() ; iserver.hasNext() ; ) { IServer server; String serverName; int serverID; String serverCUID; int serverPID; String serverServerID; int serverEnterpriseNodeID; String serverSIAHostname; String serverDescriptor; String serverState; boolean serverIsAlive; boolean serverIsDisabled; /* * Retrieve selected server properties. */ server = (IServer) iserver.next(); serverName = server.getTitle(); serverID = server.getID(); serverCUID = server.getCUID(); serverPID = server.getPID(); serverServerID = server.getServerID(); serverEnterpriseNodeID = server.getEnterpriseNodeID(); serverSIAHostname = server.getSIAHostname(); serverDescriptor = server.getServerDescriptor(); serverState = server.getState().toString(); serverIsAlive = server.isAlive(); serverIsDisabled = server.isDisabled(); HSSFRow row = sheet.createRow((short)index); row.createCell((short) 0).setCellValue(serverName); row.createCell((short) 1).setCellValue(serverID); row.createCell((short) 2).setCellValue(serverCUID); row.createCell((short) 3).setCellValue(serverDescriptor); row.createCell((short) 4).setCellValue(serverState); row.createCell((short) 5).setCellValue(serverIsAlive); row.createCell((short) 6).setCellValue(serverIsDisabled); index++; } FileOutputStream fileOut = new FileOutputStream(str[0]); wb.write(fileOut); fileOut.close(); fileOut.flush(); System.out.println(" Excel file created successfully"); } } } } catch(Exception e) { System.out.println(e.getMessage()); } } }
|