package org.bench4q.monitor.performance.windows;

import org.springframework.stereotype.Component;

@Component
public class LogicalDiskMonitor {
	public native String[] getInstances();

	public native String[] getCounterList();

	public native double getFreeSpacePercent(String instanceName);

	public native double getFreeMegabytes(String instanceName);

	public native double getCurrentDiskQueueLength(String instanceName);

	public native double getDiskTimePercent(String instanceName, int idleTime);

	public native double getAverageDiskQueueLength(String instanceName,
			int idleTime);

	public native double getDiskReadTimePercent(String instanceName,
			int idleTime);

	public native double getAverageDiskReadQueueLength(String instanceName,
			int idleTime);

	public native double getDiskWriteTimePercent(String instanceName,
			int idleTime);

	public native double getAverageDiskWriteQueueLength(String instanceName,
			int idleTime);

	public native double getAverageDiskTransferTimeInSecond(
			String instanceName, int idleTime);

	public native double getAverageDiskReadTimeInSecond(String instanceName,
			int idleTime);

	public native double getAverageDiskWriteTimeInSecond(String instanceName,
			int idleTime);

	public native double getDiskTransfersPerSecond(String instanceName,
			int idleTime);

	public native double getDiskReadsPerSecond(String instanceName, int idleTime);

	public native double getDiskWritesPerSecond(String instanceName,
			int idleTime);

	public native double getDiskBytesPerSecond(String instanceName, int idleTime);

	public native double getDiskReadBytesPerSecond(String instanceName,
			int idleTime);

	public native double getDiskWriteBytesPerSecond(String instanceName,
			int idleTime);

	public native double getAverageDiskBytesPerTransfer(String instanceName,
			int idleTime);

	public native double getAverageDiskBytesPerRead(String instanceName,
			int idleTime);

	public native double getAverageDiskBytesPerWrite(String instanceName,
			int idleTime);

	public native double getIdleTimePercent(String instanceName, int idleTime);

	public native double getSplitIOPerSecond(String instanceName, int idleTime);
}
