[Remedy] Java API

LicenseMonitor.java (7.1)

// prints the list of current users, as in
// 2007 11 01 22:04 Demo (FIXED) test (READ)
import java.lang.*; 
import java.util.List; 
import java.util.Date; 
import java.text.SimpleDateFormat; 
import com.bmc.arsys.api.*; 

class LicenseMonitor {
    public static void main(String[] args) { 
        if (args.length != 3) { 
            System.out.println("Usage: java LicenseMonitor user password server"); 
            System.exit(1); 
        } 
        
        String user = args[0]; 
        String password = args[1]; 
        String server = args[2]; 
        
        Date now = new Date(); 
        SimpleDateFormat dateFormat = new SimpleDateFormat ("yyyy MM dd HH:mm"); 
        
        try{ 
            ARServerUser context=new ARServerUser(user,password,"",server); 
            List<UserInfo> users = context.getListUser(Constants.AR_USER_LIST_CURRENT,0L);

            System.out.print(dateFormat.format(now)); 
            
            if(users!=null){ 
                for (UserInfo thisUser : users){ 
                    System.out.print(" " + thisUser.getUserName()); 
                    List<UserLicenseInfo> licenses = thisUser.getLicenseInfo(); 
                    System.out.print(" (");
                    for (UserLicenseInfo thisLicense : licenses){
                        if(thisLicense.getLicenseTag()==Constants.AR_LICENSE_TAG_WRITE){
                            switch(thisLicense.getCurrentLicenseType()){
                            case Constants.AR_LICENSE_TYPE_NONE:
                                System.out.print("READ"); break;
                            case Constants.AR_LICENSE_TYPE_FLOATING: 
                                System.out.print("FLOATING"); break;
                            case Constants.AR_LICENSE_TYPE_FIXED: 
                                System.out.print("FIXED"); break;
                            case Constants.AR_LICENSE_TYPE_FIXED2: 
                                System.out.print("FIXED2"); break;
                            }
                        }
                    }
                    System.out.print(")");
                } 
            } 
        }catch(ARException e) { 
            System.out.print(e.toString()); 
        } 
        System.out.println(); 
    } 
} 

LicenseMonitor.java (7.0)

// prints the list of current users, as in
// 2007 11 01 22:04 Demo (FIXED) test (READ)
import java.lang.*; 
import java.util.Date; 
import java.text.SimpleDateFormat; 
import com.remedy.arsys.api.*; 

class LicenseMonitor {
    public static void main(String[] args) { 
        if (args.length != 3) { 
            System.out.println("Usage: java LicenseMonitor user password server"); 
            System.exit(1); 
        } 
        
        String user = args[0]; 
        String password = args[1]; 
        String server = args[2]; 
        
        Date now = new Date(); 
        SimpleDateFormat dateFormat = new SimpleDateFormat ("yyyy MM dd HH:mm"); 
        
        try{ 
            ARServerUser context=new ARServerUser(user,password,"",server); 
            UserInfo users[] = Util.ARGetListUser(context,Constants.AR_USER_LIST_CURRENT,
                                                  (Timestamp) null); 

            System.out.print(dateFormat.format(now)); 
            
            if(users!=null){ 
                for (int i = 0; i < users.length; i++){ 
                    System.out.print(" " + users[i].getUserName()); 
                    UserLicenseInfo licenses[] = users[i].getLicenseInfo(); 
                    System.out.print(" (");
                    for (int j = 0; j <  licenses.length; j++){
                        if(licenses[j].getLicenseTag()==Constants.AR_LICENSE_TAG_WRITE){
                            switch(licenses[j].getCurrentLicenseType()){
                            case Constants.AR_LICENSE_TYPE_NONE:
                                System.out.print("READ"); break;
                            case Constants.AR_LICENSE_TYPE_FLOATING: 
                                System.out.print("FLOATING"); break;
                            case Constants.AR_LICENSE_TYPE_FIXED: 
                                System.out.print("FIXED"); break;
                            case Constants.AR_LICENSE_TYPE_FIXED2: 
                                System.out.print("FIXED2"); break;
                            }
                        }
                    }
                    System.out.print(")");
                } 
            } 
        }catch(ARException e) { 
            e.describe(); 
        } 
        System.out.println(); 
    } 
}