code: public List<Map<String, String>> getWMIObjectList(String wmiClass) throws WMIException {
  		List<Map<String, String>> foundWMIClassProperties = new ArrayList<Map<String, String>>();
  		try {
  			String rawData;
  			if (this.properties != null || this.filters != null) {
  				rawData = getWMIStub().queryObject(wmiClass, this.properties, this.filters, this.namespace,
  						this.computerName);
  			} else {
  				rawData = getWMIStub().listObject(wmiClass, this.namespace, this.computerName);
  			}
  
  			String[] dataStringObjects = rawData.split(NEWLINE_REGEX + NEWLINE_REGEX);
  			for (String dataStringObject : dataStringObjects) {
  				String[] dataStringLines = dataStringObject.split(NEWLINE_REGEX);
  				Map<String, String> objectProperties = new HashMap<String, String>();
  				for (final String line : dataStringLines) {
  					if (!line.isEmpty()) {
  						String[] entry = line.split(":");
  						if (entry.length == 2) {
  							objectProperties.put(entry[0].trim(), entry[1].trim());
  						}
  					}
  				}
  				foundWMIClassProperties.add(objectProperties);
  			}
  		} catch (WMIException ex) {
  			Logger.getLogger(WMI4Java.class.getName()).log(Level.SEVERE, GENERIC_ERROR_MSG, ex);
  			throw new WMIException(ex);
  
  		}
  		return foundWMIClassProperties;
  	}
docs: Query a list of object data for an specific class <br>
  
  This method should be used to retrieve a list of objects instead of a
  flat key/value object. <br>
  For example, you can use it to retrieve hardware elements information
  (processors, printers, screens, etc)
  
  @param wmiClass
  Enum that contains the most used classes (root/cimv2)
  @return List of key/value elements. Each element in the list is a found
  object