IGlobalConfiguration

public interface IGlobalConfiguration

com.android.tradefed.config.IGlobalConfiguration


คลาสที่จะรวมข้อมูลการกําหนดค่าส่วนกลางสําหรับอินสแตนซ์ Trade Federation รายการเดียว (รวมการเรียกใช้การกําหนดค่าจริงจํานวนเท่าใดก็ได้)

สรุป

เมธอดสาธารณะ

abstract void cleanup()

การล้างข้อมูลอย่างเหมาะสมเมื่อปิดใช้งาน

abstract File cloneConfigWithFilter( exclusionPatterns, String... allowlistConfigs)

กรอง GlobalConfiguration ตามรายการที่อนุญาตและส่งออกไปยังไฟล์ XML

abstract File cloneConfigWithFilter( exclusionPatterns, IConfigOptionValueTransformer transformer, boolean deepCopy, String... allowlistConfigs)

กรอง GlobalConfiguration ตามรายการที่อนุญาต ขณะเดียวกันก็อนุญาตให้ดัดแปลงค่าตัวเลือกและเอาต์พุตไปยังไฟล์ XML

abstract File cloneConfigWithFilter(String... allowlistConfigs)

กรอง GlobalConfiguration ตามรายการที่อนุญาตและแสดงผลเป็นไฟล์ XML

abstract ICommandScheduler getCommandScheduler()

รับ ICommandScheduler เพื่อนำไปใช้จากการกำหนดค่า

abstract Object getConfigurationObject(String typeName)

รับออบเจ็กต์การกําหนดค่าที่กําหนดเองซึ่งมีชื่อที่ระบุ

abstract ICredentialFactory getCredentialFactory()

รับ ICredentialFactory สำหรับการสร้างข้อมูลเข้าสู่ระบบ

abstract DeviceManagementGrpcServer getDeviceManagementServer()

แสดงผล DeviceManagementGrpcServer หรือ Null หากไม่ได้กําหนด

abstract IDeviceManager getDeviceManager()

รับ IDeviceManager เพื่อนำไปใช้จากการกำหนดค่า

abstract getDeviceMonitors()

รับรายการ IDeviceMonitor จากการกำหนดค่าส่วนกลาง

abstract IDeviceSelection getDeviceRequirements()

รับ IDeviceSelection ที่จะใช้จากการกําหนดค่า

abstract TradefedFeatureServer getFeatureServer()

แสดงผล TradefedFeatureServer หรือค่าว่างถ้าไม่ระบุ

abstract IConfigurationServer getGlobalConfigServer()

รับเซิร์ฟเวอร์การกำหนดค่าส่วนกลาง

abstract getHostMonitors()

รับรายการ IHostMonitor จากการกำหนดค่าส่วนกลาง

abstract IHostOptions getHostOptions()

รับ IHostOptions ที่จะใช้จากการกําหนดค่า

abstract IHostResourceManager getHostResourceManager()

รับ IHostResourceManager จากการกำหนดค่าส่วนกลาง

abstract IKeyStoreFactory getKeyStoreFactory()

รับ IKeyStoreFactory เพื่อนำไปใช้จากการกำหนดค่า

abstract getMultiDeviceRecoveryHandlers()

รับรายการ IMultiDeviceRecovery ที่จะใช้จากการกำหนดค่า

abstract getOptionValues(String optionName)

รับรายการค่าของตัวเลือก

abstract getResourceMetricCollectors()

รับรายการ IResourceMetricCollector จากการกำหนดค่าส่วนกลาง

abstract ISandboxFactory getSandboxFactory()

รับโรงงานแซนด์บ็อกซ์ที่ใช้เรียกใช้การเรียกใช้ได้

abstract IShardHelper getShardingStrategy()

แสดงผล IShardHelper ที่กําหนดวิธีแบ่งกลุ่มการกําหนดค่า

abstract TestInvocationManagementServer getTestInvocationManagementSever()

แสดงผล TestInvocationManagementServer หรือ Null หากไม่ได้กําหนด

abstract ITerribleFailureHandler getWtfHandler()

รับ ITerribleFailureHandler เพื่อนำไปใช้จากการกำหนดค่า

abstract void injectOptionValue(String optionName, String optionValue)

แทรกค่าตัวเลือกลงในชุดออบเจ็กต์การกําหนดค่า

abstract void injectOptionValue(String optionName, String optionKey, String optionValue)

แทรกค่าตัวเลือกลงในชุดออบเจ็กต์การกําหนดค่า

abstract void setCommandScheduler(ICommandScheduler scheduler)

ตั้งค่า ICommandScheduler โดยแทนที่ค่าที่มีอยู่

abstract void setConfigurationFactory(IConfigurationFactory configFactory)

ตั้งค่า IConfigurationFactory สําหรับการกําหนดค่านี้

abstract void setConfigurationObject(String name, Object configObject)

เมธอดทั่วไปในการตั้งค่าออบเจ็กต์การกําหนดค่าด้วยชื่อที่ระบุ โดยแทนที่ค่าที่มีอยู่

abstract void setConfigurationObjectList(String typeName, configList)

เมธอดทั่วไปเพื่อตั้งค่ารายการออบเจ็กต์การกําหนดค่าสําหรับชื่อที่ระบุ โดยแทนที่ค่าที่มีอยู่

abstract void setDeviceManagementServer(DeviceManagementGrpcServer server)

ตั้งค่าDeviceManagementGrpcServer

abstract void setDeviceManager(IDeviceManager deviceManager)

ตั้งค่า IDeviceManager โดยแทนที่ค่าที่มีอยู่

abstract void setDeviceMonitor(IDeviceMonitor deviceMonitor)

ตั้งค่า IDeviceMonitor

abstract void setDeviceRequirements(IDeviceSelection deviceSelection)

ตั้งค่า IDeviceSelection โดยแทนที่ค่าที่มีอยู่

abstract void setHostMonitors( hostMonitors)

ตั้งค่ารายการ IHostMonitor

abstract void setHostOptions(IHostOptions hostOptions)

ตั้งค่า IHostOptions โดยแทนที่ค่าที่มีอยู่

abstract void setHostResourceManager(IHostResourceManager hostResourceManager)

ตั้งค่า IHostResourceManager โดยแทนที่ค่าที่มีอยู่

abstract void setInvocationServer(TestInvocationManagementServer server)

ตั้งค่า TestInvocationManagementServer

abstract void setKeyStoreFactory(IKeyStoreFactory factory)

ตั้งค่า IKeyStoreFactory โดยแทนที่ค่าที่มีอยู่

abstract setOptionsFromCommandLineArgs( listArgs)

ตั้งค่าช่องการกําหนดค่า Option ระดับกลางด้วยชุดอาร์กิวเมนต์บรรทัดคําสั่งที่ระบุ

ดู ArgsOptionParser สำหรับรูปแบบที่คาดไว้

abstract void setOriginalConfig(String config)

ตั้งค่าการกําหนดค่าเดิมที่ใช้สร้างการกําหนดค่าส่วนกลาง

abstract void setResourceMetricCollector(IResourceMetricCollector collector)

ตั้งค่า IResourceMetricCollector

abstract void setSandboxFactory(ISandboxFactory factory)

ตั้งค่า ISandboxFactory โดยแทนที่ค่าที่มีอยู่

abstract void setShardingStrategy(IShardHelper sharding)

ตั้งค่า IShardHelper ที่จะใช้สําหรับการแยกข้อมูลการกําหนดค่า

abstract void setTradefedFeatureServer(TradefedFeatureServer server)

ตั้งค่าTradefedFeatureServer

abstract void setWtfHandler(ITerribleFailureHandler wtfHandler)

ตั้งค่า ITerribleFailureHandler

abstract void setup()

การตั้งค่าที่เหมาะสมในช่วงเริ่มต้นของ TradeFed

abstract void validateOptions()

ตรวจสอบค่าตัวเลือก

เมธอดสาธารณะ

ล้าง

public abstract void cleanup ()

ล้างข้อมูลอย่างเหมาะสมเมื่อ TradeFed ปิด

cloneConfigWithFilter

public abstract File cloneConfigWithFilter ( exclusionPatterns, 
                String... allowlistConfigs)

กรอง GlobalConfiguration ตามรายการที่อนุญาตและเอาต์พุตไปยังไฟล์ XML

พารามิเตอร์
exclusionPatterns : รูปแบบของชื่อคลาสที่จะยกเว้นจากข้อมูลพะพัด

allowlistConfigs String: อาร์เรย์การกําหนดค่า String ที่จะรวมไว้ในไฟล์ XML ใหม่ หากตั้งค่าเป็น null, a default list should be used.

คิกรีเทิร์น
File ไฟล์ที่มีการกำหนดค่าส่วนกลางที่กรองใหม่

โยน
IOException

ดูเพิ่มเติม

cloneConfigWithFilter

public abstract File cloneConfigWithFilter ( exclusionPatterns, 
                IConfigOptionValueTransformer transformer, 
                boolean deepCopy, 
                String... allowlistConfigs)

กรอง GlobalConfiguration ตามรายการที่อนุญาต ขณะเดียวกันก็อนุญาตให้ดัดแปลงค่าตัวเลือกและเอาต์พุตไปยังไฟล์ XML

พารามิเตอร์
exclusionPatterns : รูปแบบของชื่อคลาสที่จะยกเว้นจากข้อมูลพะพัด

transformer IConfigOptionValueTransformer

deepCopy boolean

allowlistConfigs String: อาร์เรย์ String ของการกำหนดค่าที่จะรวมไว้ในไฟล์ XML ใหม่ หากตั้งค่าเป็น null, a default list should be used.

คิกรีเทิร์น
File ไฟล์ที่มีการกำหนดค่าส่วนกลางที่กรองใหม่

ดูเพิ่มเติม

cloneConfigWithFilter

public abstract File cloneConfigWithFilter (String... allowlistConfigs)

กรอง GlobalConfiguration ตามรายการที่อนุญาตและแสดงผลเป็นไฟล์ XML

ตัวอย่างเช่น สําหรับการกําหนดค่าต่อไปนี้ <xml> <configuration> <device_monitor class="com.android.tradefed.device.DeviceMonitorMultiplexer" /> <wtf_handler class="com.android.tradefed.log.TerribleFailureEmailHandler" /> <key_store class="com.android.tradefed.util.keystore.JSONFileKeyStoreFactory" /> </configuration> </xml>

ระบบจะกรองการกําหนดค่าทั้งหมดยกเว้น "key_store" ออก และแสดงผลไฟล์การกําหนดค่าที่มีเนื้อหาต่อไปนี้ <xml> <configuration> <key_store class="com.android.tradefed.util.keystore.JSONFileKeyStoreFactory" /> </configuration> </xml>

พารามิเตอร์
allowlistConfigs String: อาร์เรย์การกําหนดค่า String ที่จะรวมไว้ในไฟล์ XML ใหม่ หากตั้งค่าเป็น null, a default list should be used.

คิกรีเทิร์น
File ไฟล์ที่มีการกำหนดค่าส่วนกลางที่กรองใหม่

โยน
IOException

getCommandScheduler

public abstract ICommandScheduler getCommandScheduler ()

รับ ICommandScheduler เพื่อนำไปใช้จากการกำหนดค่า

คิกรีเทิร์น
ICommandScheduler ICommandScheduler จะไม่แสดงผลค่าว่าง

getConfigurationObject

public abstract Object getConfigurationObject (String typeName)

รับออบเจ็กต์การกําหนดค่าที่กําหนดเองซึ่งมีชื่อที่ระบุ

พารามิเตอร์
typeName String: ประเภทที่ไม่ซ้ำกันของออบเจ็กต์การกําหนดค่า

คิกรีเทิร์น
Object ออบเจ็กต์หรือค่า Null หากไม่พบออบเจ็กต์ที่มีชื่อนั้น

getCredentialFactory

public abstract ICredentialFactory getCredentialFactory ()

รับ ICredentialFactory สำหรับการสร้างข้อมูลเข้าสู่ระบบ

คิกรีเทิร์น
ICredentialFactory ICredentialFactory หรือ null หากไม่ได้ระบุ

getDeviceManagementServer

public abstract DeviceManagementGrpcServer getDeviceManagementServer ()

แสดงผล DeviceManagementGrpcServer หรือ Null หากไม่ระบุ

คิกรีเทิร์น
DeviceManagementGrpcServer

getDeviceManager

public abstract IDeviceManager getDeviceManager ()

รับ IDeviceManager เพื่อนำไปใช้จากการกำหนดค่า จัดการชุดอุปกรณ์ที่ใช้ได้สำหรับการทดสอบ

คิกรีเทิร์น
IDeviceManager IDeviceManager ที่ระบุไว้ในการกำหนดค่า

getDeviceMonitors

public abstract  getDeviceMonitors ()

รับรายการ IDeviceMonitor จากการกำหนดค่าส่วนกลาง

คิกรีเทิร์น
รายการ IDeviceMonitor จากการกำหนดค่าส่วนกลาง หรือ null หากไม่ได้ระบุไว้

ข้อกำหนดของอุปกรณ์

public abstract IDeviceSelection getDeviceRequirements ()

รับ IDeviceSelection เพื่อนำไปใช้จากการกำหนดค่า แสดงตัวกรองส่วนกลางซึ่งDeviceManagerดูได้ในอุปกรณ์

คิกรีเทิร์น
IDeviceSelection IDeviceSelection ที่ระบุไว้ในการกำหนดค่า

getFeatureServer

public abstract TradefedFeatureServer getFeatureServer ()

แสดงผล TradefedFeatureServer หรือ Null หากไม่ได้กําหนด

คิกรีเทิร์น
TradefedFeatureServer

getGlobalConfigServer

public abstract IConfigurationServer getGlobalConfigServer ()

รับเซิร์ฟเวอร์การกําหนดค่าส่วนกลาง เซิร์ฟเวอร์การกําหนดค่าส่วนกลางใช้รับการกําหนดค่าโฮสต์จากเซิร์ฟเวอร์แทนที่จะรับจากไฟล์ในเครื่อง

คิกรีเทิร์น
IConfigurationServer

getHostMonitors

public abstract  getHostMonitors ()

รับรายการ IHostMonitor จากการกำหนดค่าส่วนกลาง

คิกรีเทิร์น
รายการ IHostMonitor จากการกำหนดค่าส่วนกลาง หรือ null หากไม่ได้ระบุ

getHostOptions

public abstract IHostOptions getHostOptions ()

รับ IHostOptions ที่จะใช้จากการกําหนดค่า

คิกรีเทิร์น
IHostOptions IDeviceManager ที่ระบุไว้ในการกำหนดค่า

getHostResourceManager

public abstract IHostResourceManager getHostResourceManager ()

รับ IHostResourceManager จากการกำหนดค่าส่วนกลาง

คิกรีเทิร์น
IHostResourceManager IHostResourceManager จากการกำหนดค่าส่วนกลางหรือการใช้งานเริ่มต้น LocalHostResourceManager หากไม่ได้ระบุไว้ในการกำหนดค่าโฮสต์

getKeyStoreFactory

public abstract IKeyStoreFactory getKeyStoreFactory ()

รับ IKeyStoreFactory ที่จะใช้จากการกําหนดค่า

คิกรีเทิร์น
IKeyStoreFactory IKeyStoreFactory หรือ Null หากไม่มีการตั้งค่าเป็นค่าเริ่มต้นของแหล่งเก็บคีย์

getMultiDeviceRecoveryHandlers

public abstract  getMultiDeviceRecoveryHandlers ()

รับรายการ IMultiDeviceRecovery ที่จะใช้จากการกำหนดค่า

คิกรีเทิร์น
รายการ IMultiDeviceRecovery หรือ null หากไม่ได้ตั้งค่า

getOptionValues

public abstract  getOptionValues (String optionName)

รับรายการค่าของตัวเลือก

พารามิเตอร์
optionName String: ชื่อตัวเลือกแผนที่

คิกรีเทิร์น
รายการค่าของตัวเลือกที่ระบุ null หากไม่มีชื่อตัวเลือกดังกล่าว

getResourceMetricCollectors

public abstract  getResourceMetricCollectors ()

รับรายการ IResourceMetricCollector จากการกำหนดค่าส่วนกลาง

คิกรีเทิร์น
รายการ IResourceMetricCollector จากการกำหนดค่าส่วนกลางหรือ null หากไม่ได้ระบุ

getSandboxFactory

public abstract ISandboxFactory getSandboxFactory ()

รับโรงงานแซนด์บ็อกซ์ที่ใช้เรียกใช้การเรียกใช้ได้

คิกรีเทิร์น
ISandboxFactory

getShardingStrategy

public abstract IShardHelper getShardingStrategy ()

แสดงผล IShardHelper ที่กําหนดวิธีแบ่งกลุ่มการกําหนดค่า

คิกรีเทิร์น
IShardHelper

getTestInvocationManagementSever

public abstract TestInvocationManagementServer getTestInvocationManagementSever ()

แสดงผล TestInvocationManagementServer หรือ Null หากไม่ได้กําหนด

คิกรีเทิร์น
TestInvocationManagementServer

getWtfHandler

public abstract ITerribleFailureHandler getWtfHandler ()

รับ ITerribleFailureHandler ที่จะใช้จากการกําหนดค่า จัดการสิ่งที่ต้องทำในกรณีที่เกิด WTF (What a Terrible Failure)

คิกรีเทิร์น
ITerribleFailureHandler ITerribleFailureHandler ที่ระบุในการกําหนดค่า หรือเป็นค่าว่างหากไม่ได้ตั้งค่าตัวแฮนเดิล

InjectOptionValue

public abstract void injectOptionValue (String optionName, 
                String optionValue)

แทรกค่าตัวเลือกลงในชุดออบเจ็กต์การกําหนดค่า

มีประโยชน์ในการระบุค่าสําหรับตัวเลือกที่สร้างขึ้นแบบไดนามิก

พารามิเตอร์
optionName String: ชื่อตัวเลือก

optionValue String: ค่าตัวเลือก

โยน
ConfigurationException หากตั้งค่าของตัวเลือกไม่สำเร็จ

InjectOptionValue

public abstract void injectOptionValue (String optionName, 
                String optionKey, 
                String optionValue)

แทรกค่าตัวเลือกลงในชุดออบเจ็กต์การกําหนดค่า

มีประโยชน์ในการระบุค่าสําหรับตัวเลือกที่สร้างขึ้นแบบไดนามิก

พารามิเตอร์
optionName String: ชื่อตัวเลือกแผนที่

optionKey String: แป้นตัวเลือกแผนที่

optionValue String: ค่าตัวเลือกการแมป

โยน
ConfigurationException หากตั้งค่าของตัวเลือกไม่สำเร็จ

setCommandScheduler

public abstract void setCommandScheduler (ICommandScheduler scheduler)

ตั้งค่า ICommandScheduler โดยแทนที่ค่าที่มีอยู่

setConfigurationFactory

public abstract void setConfigurationFactory (IConfigurationFactory configFactory)

ตั้งค่า IConfigurationFactory สําหรับการกําหนดค่านี้

พารามิเตอร์
configFactory IConfigurationFactory

setConfigurationObject

public abstract void setConfigurationObject (String name, 
                Object configObject)

เมธอดทั่วไปในการตั้งค่าออบเจ็กต์การกําหนดค่าด้วยชื่อที่ระบุ โดยแทนที่ค่าที่มีอยู่

พารามิเตอร์
name String: ชื่อที่ไม่ซ้ำกันของประเภทออบเจ็กต์การกําหนดค่า

configObject Object: ออบเจ็กต์การกำหนดค่า

โยน
ConfigurationException หาก configObject ไม่ใช่ประเภทที่ถูกต้อง

setConfigurationObjectList

public abstract void setConfigurationObjectList (String typeName, 
                 configList)

เมธอดทั่วไปเพื่อตั้งค่ารายการออบเจ็กต์การกําหนดค่าสําหรับชื่อที่ระบุ โดยแทนที่ค่าที่มีอยู่

พารามิเตอร์
typeName String: ชื่อที่ไม่ซ้ำกันของประเภทออบเจ็กต์การกําหนดค่า

configList : รายการออบเจ็กต์การกําหนดค่า

โยน
ConfigurationException หากออบเจ็กต์ในรายการไม่ใช่ประเภทที่ถูกต้อง

ตั้งค่าเซิร์ฟเวอร์การจัดการอุปกรณ์

public abstract void setDeviceManagementServer (DeviceManagementGrpcServer server)

ตั้งค่าDeviceManagementGrpcServer

พารามิเตอร์
server DeviceManagementGrpcServer

setDeviceManager

public abstract void setDeviceManager (IDeviceManager deviceManager)

ตั้งค่า IDeviceManager โดยแทนที่ค่าที่มีอยู่ ซึ่งจะตั้งค่าตัวจัดการสําหรับอุปกรณ์ทดสอบ

setDeviceMonitor

public abstract void setDeviceMonitor (IDeviceMonitor deviceMonitor)

ตั้งค่า IDeviceMonitor

พารามิเตอร์
deviceMonitor IDeviceMonitor: จอภาพ

โยน
ConfigurationException หากตั้งค่า IDeviceMonitor ไว้แล้ว

setDeviceRequirements

public abstract void setDeviceRequirements (IDeviceSelection deviceSelection)

ตั้งค่า IDeviceSelection โดยแทนที่ค่าที่มีอยู่ ซึ่งจะตั้งค่าตัวกรองอุปกรณ์ส่วนกลางในอุปกรณ์ที่ DeviceManager จะดูได้

setHostMonitors

public abstract void setHostMonitors ( hostMonitors)

ตั้งค่ารายการ IHostMonitor

พารามิเตอร์
hostMonitors : รายการจอภาพ

โยน
ConfigurationException หากตั้งค่า IHostMonitor ไว้แล้ว

setHostOptions

public abstract void setHostOptions (IHostOptions hostOptions)

ตั้งค่า IHostOptions โดยแทนที่ค่าที่มีอยู่

setHostResourceManager

public abstract void setHostResourceManager (IHostResourceManager hostResourceManager)

ตั้งค่า IHostResourceManager โดยแทนที่ค่าที่มีอยู่

setInvocationServer

public abstract void setInvocationServer (TestInvocationManagementServer server)

ตั้งค่า TestInvocationManagementServer

พารามิเตอร์
server TestInvocationManagementServer

setKeyStoreFactory

public abstract void setKeyStoreFactory (IKeyStoreFactory factory)

ตั้งค่า IKeyStoreFactory โดยแทนที่ค่าที่มีอยู่

setOptionsFromCommandLineArgs

public abstract  setOptionsFromCommandLineArgs ( listArgs)

ตั้งค่าช่องการกําหนดค่า Option ระดับกลางด้วยชุดอาร์กิวเมนต์บรรทัดคําสั่งที่ระบุ

ดู ArgsOptionParser สำหรับรูปแบบที่คาดไว้

พารามิเตอร์
listArgs : อาร์กิวเมนต์บรรทัดคำสั่ง

คิกรีเทิร์น
อาร์กิวเมนต์ที่ไม่ได้ใช้

โยน
ConfigurationException

setOriginalConfig

public abstract void setOriginalConfig (String config)

ตั้งค่าการกําหนดค่าเดิมที่ใช้สร้างการกําหนดค่าส่วนกลาง

พารามิเตอร์
config String

setResourceMetricCollector

public abstract void setResourceMetricCollector (IResourceMetricCollector collector)

ตั้งค่าIResourceMetricCollector

พารามิเตอร์
collector IResourceMetricCollector

setSandboxFactory

public abstract void setSandboxFactory (ISandboxFactory factory)

ตั้งค่า ISandboxFactory โดยแทนที่ค่าที่มีอยู่

setShardingStrategy

public abstract void setShardingStrategy (IShardHelper sharding)

ตั้งค่า IShardHelper ที่จะใช้สําหรับการแยกข้อมูลการกําหนดค่า

พารามิเตอร์
sharding IShardHelper

ตั้งค่าเซิร์ฟเวอร์ TradefedFeature

public abstract void setTradefedFeatureServer (TradefedFeatureServer server)

ตั้งค่าTradefedFeatureServer

พารามิเตอร์
server TradefedFeatureServer

setWtfHandler

public abstract void setWtfHandler (ITerribleFailureHandler wtfHandler)

ตั้งค่า ITerribleFailureHandler

พารามิเตอร์
wtfHandler ITerribleFailureHandler: เครื่องจัดการ WTF

โยน
ConfigurationException หากมีการตั้งค่า ITerribleFailureHandler ไว้แล้ว

ตั้งค่า

public abstract void setup ()

การตั้งค่าที่เหมาะสมในช่วงเริ่มต้นของ TradeFed

โยน
com.android.tradefed.config.ConfigurationException
ConfigurationException

validateOptions

public abstract void validateOptions ()

ตรวจสอบค่าตัวเลือก

การดำเนินการนี้เป็นเพียงการตรวจสอบว่าได้ตั้งค่าตัวเลือกที่จำเป็นทั้งหมดแล้ว

โยน
ConfigurationException หากการกำหนดค่าไม่มีฟิลด์ที่จำเป็น