Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

CommandScheduler

public class CommandScheduler
extends Object implements ICommandScheduler

java.lang.Object
com.android.tradefed.command.CommandScheduler


Một bộ lập lịch để chạy các lệnh TradeFederation trên tất cả các thiết bị có sẵn.

Sẽ cố gắng ưu tiên các lệnh để chạy dựa trên tổng số thời gian thực thi của chúng đang chạy. ví dụ: các lệnh chạy không thường xuyên hoặc nhanh sẽ được ưu tiên hơn các lệnh chạy lâu.

Chạy mãi mãi trong nền cho đến khi tắt máy.

Bản tóm tắt

Các lớp lồng nhau

enum CommandScheduler.HostState

Các trạng thái khác nhau của máy chủ lưu trữ

Các nhà xây dựng công cộng

CommandScheduler ()

Tạo CommandScheduler .

Phương pháp công khai

Pair <Boolean, Integer> addCommand (String[] args)

Thêm lệnh vào bộ lập lịch.

void addCommandFile (String cmdFilePath, extraArgs) addCommandFile (String cmdFilePath, extraArgs)

Thêm tất cả các lệnh từ tệp đã cho vào bộ lập lịch

void await ()

Chờ bộ lập lịch bắt đầu chạy, bao gồm cả việc chờ bàn giao từ TF cũ để hoàn thành nếu có.

static TradefedDelegator checkDelegation (String[] args)

Tạo một người ủy quyền dựa trên dòng lệnh để xem liệu chúng ta có cần ủy quyền việc chạy hay không.

static createReleaseMap ( IInvocationContext context, Throwable e)

Tạo bản đồ trạng thái thiết bị để chúng có thể được phát hành một cách thích hợp.

ISandbox createSandbox ()

Tạo một ISandbox mà lời gọi sẽ sử dụng để chạy.

void displayCommandQueue (PrintWriter printWriter)

Đưa ra thông tin gỡ lỗi chi tiết về trạng thái của hàng đợi thực thi lệnh.

void displayCommandsInfo (PrintWriter printWriter, String regex)

Xuất ra danh sách các lệnh hiện tại.

void displayInvocationsInfo (PrintWriter printWriter)

Hiển thị danh sách các lời gọi hiện tại.

void dumpCommandsXml (PrintWriter printWriter, String regex)

Kết xuất tệp xml mở rộng cho lệnh với tất cả các giá trị Option được chỉ định cho tất cả các lệnh hiện tại.

long execCommand ( IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)

Trực tiếp cấp phát một thiết bị và thực thi một lệnh mà không cần thêm nó vào hàng đợi lệnh bằng cách sử dụng IInvocationContext đã tồn tại.

long execCommand ( ICommandScheduler.IScheduledInvocationListener listener, String[] args)

Trực tiếp cấp phát một thiết bị và thực hiện một lệnh mà không cần thêm nó vào hàng đợi lệnh.

long execCommand ( ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)

Thực hiện trực tiếp lệnh trên thiết bị đã được cấp phát.

CommandFileWatcher getCommandFileWatcher ()

Nhận CommandFileWatcher thích hợp cho bộ lập lịch này

int getExecutingCommandCount ()

Trả về số lượng Lệnh ở trạng thái thực thi.

CommandScheduler.HostState getHostState ()
String getInvocationInfo (int invocationId)

Trả lại thông tin về một bu lời gọi chỉ định id lời gọi.

CommandRunner.ExitCode getLastInvocationExitCode ()

Trả lại mã lỗi của lời gọi cuối cùng đã chạy.

Throwable getLastInvocationThrowable ()

Trả lại Throwable từ lời gọi cuối cùng đã chạy.

int getReadyCommandCount ()

Trả về số lượng Lệnh ở trạng thái sẵn sàng trong hàng đợi.

long getShutdownTimeout ()
boolean isDeviceInInvocationThread ( ITestDevice device)

Trả về true nếu thiết bị được sử dụng bởi một chuỗi yêu cầu đang hoạt động.

void notifyFileChanged (File cmdFile, extraArgs) notifyFileChanged (File cmdFile, extraArgs)
void removeAllCommands ()

Xóa tất cả các lệnh khỏi bộ lập lịch

void run ()

Khối thực thi chính của luồng này.

void setClearcutClient (ClearcutClient client)

Đặt máy khách báo cáo dữ liệu khai thác

boolean shouldShutdownOnCmdfileError ()

Trả về true nếu chúng ta cần tắt bộ lập lịch khi gặp lỗi lệnh

void shutdown (boolean notifyStop)

Cố gắng tắt bộ lập lịch lệnh một cách duyên dáng.

void shutdownHard (boolean killAdb)

Cố gắng tắt mạnh bộ lập lịch lệnh.

void shutdownHard ()

Cố gắng tắt mạnh bộ lập lịch lệnh.

void shutdownOnEmpty ()

Tương tự như shutdown() , nhưng thay vào đó sẽ đợi tất cả các lệnh được thực thi trước khi thoát.

void start ()

Khởi động bộ lập lịch bao gồm thiết lập ghi nhật ký, init của DeviceManager , v.v.

boolean stopInvocation (int invocationId, String cause)

Dừng một lời gọi đang chạy bằng cách chỉ định id của nó.

boolean stopInvocation ( ITestInvocation invocation)

Dừng một lời gọi đang chạy.

Các phương pháp được bảo vệ

void cleanUp ()

Đóng nhật ký và thực hiện bất kỳ thao tác dọn dẹp cần thiết nào khác trước khi chúng tôi thoát.

IConfiguration createConfiguration (String[] args)
IInvocationContext createInvocationContext ()
IConfigurationFactory getConfigFactory ()

Phương thức ban đầu để nhận tham chiếu đến IConfigurationFactory

DeviceManagementGrpcServer getDeviceManagementServer ()
IDeviceManager getDeviceManager ()

Phương thức gốc để nhận tham chiếu đến IDeviceManager

TradefedFeatureServer getFeatureServer ()
IHostOptions getHostOptions ()
IKeyStoreClient getKeyStoreClient ()

Tìm IKeyStoreClient bằng IKeyStoreFactory khai báo trong IGlobalConfiguration hoặc null nếu không có định nghĩa nào.

TestInvocationManagementServer getTestInvocationManagementServer ()
void initLogging ()

Khởi tạo nhật ký ddmlib.

boolean isShutdown ()
boolean isShuttingDown ()
void processReadyCommands ( IDeviceManager manager)

Các nhà xây dựng công cộng

CommandScheduler

public CommandScheduler ()

Tạo CommandScheduler .

Lưu ý: phải gọi start trước khi sử dụng.

Phương pháp công khai

addCommand

public Pair<Boolean, Integer> addCommand (String[] args)

Thêm lệnh vào bộ lập lịch.

Một lệnh về cơ bản là một phiên bản của cấu hình để chạy và các đối số liên quan của nó.

Nếu đối số "--help" được chỉ định, văn bản trợ giúp cho cấu hình sẽ được chuyển sang stdout. Nếu không, cấu hình sẽ được thêm vào hàng đợi để chạy.

Thông số
args String : các đối số cấu hình.

Lợi nhuận
Pair <Boolean, Integer> Một cặp giá trị, giá trị đầu tiên là giá trị true Boolean nếu lệnh được thêm thành công. Giá trị thứ hai là id trình theo dõi lệnh đã biết (giá trị không âm) nếu lệnh được thêm thành công, trả về 0 khi lệnh được thêm cho tất cả các thiết bị, nếu không thì -1.

Ném
ConfigurationException

addCommandFile

public void addCommandFile (String cmdFilePath, 
                 extraArgs)

Thêm tất cả các lệnh từ tệp đã cho vào bộ lập lịch

Thông số
cmdFilePath String : đường dẫn hệ thống tệp của tệp comand

extraArgs : một ERROR(/List) các đối số String để thêm vào mỗi lệnh được phân tích cú pháp từ tệp. Có thể để trống nhưng không được để trống.

Ném
ConfigurationException

chờ đợi

public void await ()

Chờ bộ lập lịch bắt đầu chạy, bao gồm cả việc chờ bàn giao từ TF cũ để hoàn thành nếu có.

checkDelegation

public static TradefedDelegator checkDelegation (String[] args)

Tạo một người ủy quyền dựa trên dòng lệnh để xem liệu chúng ta có cần ủy quyền việc chạy hay không.

Thông số
args String

Lợi nhuận
TradefedDelegator

Ném
ConfigurationException

createReleaseMap

public static  createReleaseMap (IInvocationContext context, 
                Throwable e)

Tạo bản đồ trạng thái thiết bị để chúng có thể được phát hành một cách thích hợp.

Thông số
context IInvocationContext

e Throwable

Lợi nhuận

createSandbox

public ISandbox createSandbox ()

Tạo một ISandbox mà lời gọi sẽ sử dụng để chạy.

Lợi nhuận
ISandbox

displayCommandQueue

public void displayCommandQueue (PrintWriter printWriter)

Đưa ra thông tin gỡ lỗi chi tiết về trạng thái của hàng đợi thực thi lệnh.

displayCommandsInfo

public void displayCommandsInfo (PrintWriter printWriter, 
                String regex)

Xuất ra danh sách các lệnh hiện tại.

Thông số
printWriter PrintWriter : ERROR(/PrintWriter) để xuất ra.

regex String : biểu thức chính quy mà các lệnh sẽ được khớp để được in. Nếu null, thì tất cả các lệnh sẽ được in.

displayInvocationsInfo

public void displayInvocationsInfo (PrintWriter printWriter)

Hiển thị danh sách các lời gọi hiện tại.

Thông số
printWriter PrintWriter : ERROR(/PrintWriter) để xuất ra.

dumpCommandsXml

public void dumpCommandsXml (PrintWriter printWriter, 
                String regex)

Kết xuất tệp xml mở rộng cho lệnh với tất cả các giá trị Option được chỉ định cho tất cả các lệnh hiện tại.

Thông số
printWriter PrintWriter : ERROR(/PrintWriter) để xuất trạng thái sang.

regex String : biểu thức chính quy mà các lệnh sẽ được khớp với nhau để tệp xml được kết xuất. Nếu null, thì tất cả các lệnh sẽ được kết xuất.

executeCommand

public long execCommand (IInvocationContext context, 
                ICommandScheduler.IScheduledInvocationListener listener, 
                String[] args)

Trực tiếp cấp phát một thiết bị và thực thi một lệnh mà không cần thêm nó vào hàng đợi lệnh bằng cách sử dụng IInvocationContext đã tồn tại.

Thông số
context IInvocationContext : một IInvocationContext hiện có.

listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener sẽ được thông báo

args String : các đối số lệnh

Lợi nhuận
long

Ném
ConfigurationException
NoDeviceException

executeCommand

public long execCommand (ICommandScheduler.IScheduledInvocationListener listener, 
                String[] args)

Trực tiếp cấp phát một thiết bị và thực hiện một lệnh mà không cần thêm nó vào hàng đợi lệnh.

Thông số
listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener sẽ được thông báo

args String : các đối số lệnh

Lợi nhuận
long Id lệnh gọi của lệnh đã lên lịch.

Ném
ConfigurationException
NoDeviceException

executeCommand

public long execCommand (ICommandScheduler.IScheduledInvocationListener listener, 
                ITestDevice device, 
                String[] args)

Thực hiện trực tiếp lệnh trên thiết bị đã được cấp phát.

Thông số
listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener sẽ được thông báo

device ITestDevice : ITestDevice để sử dụng

args String : các đối số lệnh

Lợi nhuận
long Id lệnh gọi của lệnh đã lên lịch.

Ném
ConfigurationException

getCommandFileWatcher

public CommandFileWatcher getCommandFileWatcher ()

Nhận CommandFileWatcher thích hợp cho bộ lập lịch này

Lợi nhuận
CommandFileWatcher

getExecutingCommandCount

public int getExecutingCommandCount ()

Trả về số lượng Lệnh ở trạng thái thực thi.

Lợi nhuận
int

getHostState

public CommandScheduler.HostState getHostState ()

Lợi nhuận
CommandScheduler.HostState

getInvocationInfo

public String getInvocationInfo (int invocationId)

Trả lại thông tin về một bu lời gọi chỉ định id lời gọi.

Thông số
invocationId int : id theo dõi của lời kêu gọi.

Lợi nhuận
String Một String chứa thông tin về lời gọi.

getLastInvocationExitCode

public CommandRunner.ExitCode getLastInvocationExitCode ()

Trả lại mã lỗi của lời gọi cuối cùng đã chạy. Trả về 0 (không có lỗi), nếu chưa có lệnh gọi nào chạy.

Lợi nhuận
CommandRunner.ExitCode

getLastInvocationThrowable

public Throwable getLastInvocationThrowable ()

Trả lại Throwable từ lời gọi cuối cùng đã chạy. Trả về null, nếu không có sẵn tệp ném được.

Lợi nhuận
Throwable

getReadyCommandCount

public int getReadyCommandCount ()

Trả về số lượng Lệnh ở trạng thái sẵn sàng trong hàng đợi.

Lợi nhuận
int

getShutdownTimeout

public long getShutdownTimeout ()

Lợi nhuận
long

isDeviceInInvocationThread

public boolean isDeviceInInvocationThread (ITestDevice device)

Trả về true nếu thiết bị được sử dụng bởi một chuỗi yêu cầu đang hoạt động.

Thông số
device ITestDevice

Lợi nhuận
boolean

tifyFileChanged

public void notifyFileChanged (File cmdFile, 
                 extraArgs)

Thông số
cmdFile File

extraArgs

removeAllCommands

public void removeAllCommands ()

Xóa tất cả các lệnh khỏi bộ lập lịch

chạy

public void run ()

Khối thực thi chính của luồng này.

setClearcutClient

public void setClearcutClient (ClearcutClient client)

Đặt máy khách báo cáo dữ liệu khai thác

Thông số
client ClearcutClient

shouldShutdownOnCmdfileError

public boolean shouldShutdownOnCmdfileError ()

Trả về true nếu chúng ta cần tắt bộ lập lịch khi gặp lỗi lệnh

Lợi nhuận
boolean

tắt

public void shutdown (boolean notifyStop)

Cố gắng tắt bộ lập lịch lệnh một cách duyên dáng.

Thông số
notifyStop boolean : nếu đúng, thông báo lệnh tắt TF.

tắt máy

public void shutdownHard (boolean killAdb)

Cố gắng tắt mạnh bộ lập lịch lệnh.

Tương tự như shutdown() , nhưng cũng sẽ tùy chọn ngắt kết nối adb, nhằm cố gắng 'truyền cảm hứng' cho các lệnh gọi đang diễn ra để hoàn thành nhanh hơn.

Thông số
killAdb boolean

tắt máy

public void shutdownHard ()

Cố gắng tắt mạnh bộ lập lịch lệnh. Tương tự như shutdownHard (true).

shutdownOnEmpty

public void shutdownOnEmpty ()

Tương tự như shutdown() , nhưng thay vào đó sẽ đợi tất cả các lệnh được thực thi trước khi thoát.

Lưu ý rằng nếu bất kỳ lệnh nào ở chế độ vòng lặp, bộ lập lịch sẽ không bao giờ thoát.

bắt đầu

public void start ()

Khởi động bộ lập lịch bao gồm thiết lập ghi nhật ký, init của DeviceManager , v.v.

stopInvocation

public boolean stopInvocation (int invocationId, 
                String cause)

Dừng một lời gọi đang chạy bằng cách chỉ định id của nó.

Thông số
invocationId int : id theo dõi của lời kêu gọi.

cause String : nguyên nhân dừng lệnh gọi.

Lợi nhuận
boolean true nếu lệnh gọi bị dừng, false nếu không

stopInvocation

public boolean stopInvocation (ITestInvocation invocation)

Dừng một lời gọi đang chạy.

Thông số
invocation ITestInvocation

Lợi nhuận
boolean true nếu lệnh gọi bị dừng, false nếu không

Các phương pháp được bảo vệ

dọn dẹp

protected void cleanUp ()

Đóng nhật ký và thực hiện bất kỳ thao tác dọn dẹp cần thiết nào khác trước khi chúng tôi thoát.

Tiếp xúc để các bài kiểm tra đơn vị có thể giả lập.

createConfiguration

protected IConfiguration createConfiguration (String[] args)

Thông số
args String

Lợi nhuận
IConfiguration

Ném
ConfigurationException

createInvocationContext

protected IInvocationContext createInvocationContext ()

Lợi nhuận
IInvocationContext

getConfigFactory

protected IConfigurationFactory getConfigFactory ()

Phương thức ban đầu để nhận tham chiếu đến IConfigurationFactory

Lợi nhuận
IConfigurationFactory IConfigurationFactory để sử dụng

getDeviceManagementServer

protected DeviceManagementGrpcServer getDeviceManagementServer ()

Lợi nhuận
DeviceManagementGrpcServer

getDeviceManager

protected IDeviceManager getDeviceManager ()

Phương thức gốc để nhận tham chiếu đến IDeviceManager

Lợi nhuận
IDeviceManager IDeviceManager để sử dụng

getFeatureServer

protected TradefedFeatureServer getFeatureServer ()

Lợi nhuận
TradefedFeatureServer

getHostOptions

protected IHostOptions getHostOptions ()

Lợi nhuận
IHostOptions

getKeyStoreClient

protected IKeyStoreClient getKeyStoreClient ()

Tìm IKeyStoreClient bằng IKeyStoreFactory khai báo trong IGlobalConfiguration hoặc null nếu không có định nghĩa nào.

Lợi nhuận
IKeyStoreClient IKeyStoreClient

getTestInvocationManagementServer

protected TestInvocationManagementServer getTestInvocationManagementServer ()

Lợi nhuận
TestInvocationManagementServer

initLogging

protected void initLogging ()

Khởi tạo nhật ký ddmlib.

Tiếp xúc để các bài kiểm tra đơn vị có thể giả lập.

isShutdown

protected boolean isShutdown ()

Lợi nhuận
boolean

isShuttingDown

protected boolean isShuttingDown ()

Lợi nhuận
boolean

processReadyCommands

protected void processReadyCommands (IDeviceManager manager)

Thông số
manager IDeviceManager