org.eclipse.core.runtime.preferences ÆÐŰÁö´Â Ç÷¯±×ÀÎÀÇ È¯°æ ¼³Á¤À» ÀúÀåÇÏ´Â ÇϺα¸Á¶¸¦ Á¦°øÇÕ´Ï´Ù. ȯ°æ ¼³Á¤Àº ÀϹÝÀûÀ¸·Î ±âº» ÇϺα¸Á¶¿¡¼ ÀÌ ÇϺα¸Á¶¸¦ ÇÊ¿ä·Î ÇÏÁö ¾Ê´õ¶óµµ »ç¿ëÀÚ°¡ Á¦¾îÇÏ´Â Workbench ȯ°æ ¼³Á¤ ÆäÀÌÁöÀÇ ¼³Á¤À¸·Î ¸ÊÇε˴ϴÙ. Ç÷¯±×ÀΠȯ°æ ¼³Á¤Àº Ű/°ª ½ÖÀ̸ç, ¿©±â¼ Ű´Â ȯ°æ ¼³Á¤ÀÇ À̸§À» ¼³¸íÇÏ°í °ªÀº ¿©·¯ °¡Áö À¯Çü(boolean, double, float, int, long ¶Ç´Â string) Áß ÇϳªÀÔ´Ï´Ù. ȯ°æ ¼³Á¤ÀÌ ÀúÀåµÇ¾î ÆÄÀÏ ½Ã½ºÅÛÀÇ Ç÷§Æû¿¡¼ °Ë»öµË´Ï´Ù. ÀúÀåµÈ ȯ°æ ¼³Á¤ÀÇ Á¤È®ÇÑ À§Ä¡´Â ȯ°æ ¼³Á¤ÀÇ ¹üÀ§¿¡ µû¶ó ´Ù¸¨´Ï´Ù.
Àüü ȯ°æ ¼³Á¤ ÀúÀåÀ» ³ëµåÀÇ °èÃþ ±¸Á¶·Î »ý°¢ÇÒ ¼ö Àִµ¥, ¿©±â¼ °èÃþ ±¸Á¶ÀÇ °¢ ±âº» ºÐ±â´Â ƯÁ¤ ¹üÀ§¸¦ Ç¥½ÃÇÕ´Ï´Ù. ƯÁ¤ ³ëµåÀÇ ÇÏÀ§´Â ÇØ´ç ¹üÀ§°¡ Á¤ÀǵǴ ¹æ¹ý¿¡ µû¶ó ´Ù¸¨´Ï´Ù. ÀνºÅϽº ¹× ±¸¼º ¹üÀ§ÀÇ °æ¿ì ÇÏÀ§ ³ëµå´Â ȯ°æ ¼³Á¤ ±ÔÁ¤ÀÚ(´ë°³ Ç÷¯±×ÀÎÀÇ ID)¿¡¼ ÁöÁ¤ÇÑ Æ¯Á¤ Ç÷¯±×ÀÎÀÇ È¯°æ ¼³Á¤ÀÔ´Ï´Ù.
ÀÌ ¸ðµç ³»¿ëÀÌ È¥µ¿µÇ´õ¶óµµ °ÆÁ¤ÇÏÁö ¸¶½Ê½Ã¿À. ¹üÀ§ ¹× ³ëµå¿¡ ´ëÇØ ¹®Á¦°¡ ¾øÀ¸¸é ƯÁ¤ ¹üÀ§ ¶Ç´Â ½ÇÁ¦·Î ȯ°æ ¼³Á¤ °ªÀÌ µé¾î ÀÖ´Â Æ®¸® ³ëµå¿¡ ´ëÇØ °ÆÁ¤ÇÒ Çʿ䰡 ¾ø½À´Ï´Ù. ȯ°æ ¼³Á¤ °ªÀ» Á¶È¸Çϰí Á¦°øµÈ ±ÔÁ¤ÀÚ ¹× ȯ°æ ¼³Á¤ À̸§À» »ç¿ëÇÏ¿© ½ÇÁ¦·Î °ªÀÌ µé¾î ÀÖ´Â ³ëµå¸¦ ãÀ» ¶§ ȯ°æ ¼³Á¤ API´Â ÀûÀýÇÑ ¼ø¼(ÀνºÅϽº, ±¸¼º, ±âº»°ª)·Î ³ëµå¸¦ ÀÚµ¿À¸·Î ¼øÈ¸ÇÕ´Ï´Ù.
ȯ°æ ¼³Á¤Àº IPreferencesService ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÏ¿© ¾×¼¼½ºµË´Ï´Ù. Ç÷§ÆûÀÇ ±âº» ȯ°æ ¼³Á¤ ¼ºñ½º´Â Ç÷§Æû Ŭ·¡½º¸¦ »ç¿ëÇÏ¿© ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
... IPreferencesService service = Platform.getPreferencesService(); ...
ȯ°æ ¼³Á¤ ¼ºñ½º¸¦ ¾òÀ¸¸é IPreferencesService¿¡ Á¦°øµÈ get... ¸Þ¼Òµå Áß Çϳª¸¦ »ç¿ëÇÏ¿© À̸§º°·Î ȯ°æ ¼³Á¤ °ªÀ» Á¶È¸ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½ ½º´ÏÆêÀº "com.example.myplugin" Ç÷¯±×ÀÎÀÇ "MyPreference" ȯ°æ ¼³Á¤ °ªÀ» Á¶È¸ÇÕ´Ï´Ù.
... IPreferencesService service = Platform.getPreferencesService(); boolean value = service.getBoolean("com.example.myplugin", "MyPreference", true, null); //do something with the value. ...
Á¶È¸ ¸Þ¼ÒµåÀÇ ¸¶Áö¸· ¸Å°³º¯¼ö´Â ȯ°æ ¼³Á¤ ³ëµå¸¦ °Ë»öÇÒ ¶§ »ç¿ëÇÏ´Â ¹üÀ§ ÄÁÅØ½ºÆ®ÀÇ ¹è¿ÀÔ´Ï´Ù. ¹è¿ÀÌ ³Î(null)À̸é Ç÷§ÆûÀº ±âº» ¹üÀ§ °Ë»ö ¼ø¼°¡ »ç¿ëµÇ¾î¾ß ÇÔÀ» °¡Á¤Çϰí ÇØ´ç ȯ°æ ¼³Á¤ ³ëµå¸¦ ¿¹»óÇÕ´Ï´Ù. ¹üÀ§ ÄÁÅØ½ºÆ®ÀÇ ¹è¿ÀÌ Àü´ÞµÇ¸é ȯ°æ ¼³Á¤ ³ëµå¸¦ ã´Â µ¥ »ç¿ëµÉ ¹üÀ§ ã¾Æº¸±â ¼ø¼°¡ ÆÇº°µË´Ï´Ù. ÁöÁ¤µÈ ¹üÀ§¸¦ »ç¿ëÇÏ¿© ³ëµå¸¦ ãÀ» ¼ö ¾øÀ» °æ¿ì Ç×»ó ±âº» ¹üÀ§ ã¾Æº¸±â ¼ø¼°¡ »ç¿ëµË´Ï´Ù.
Ç÷¯±×Àο¡ ¹üÀ§ °Ë»ö ¼ø¼¿¡ ´ëÇÑ ´õ¿í Á¤¹ÐÇÑ Á¦¾î°¡ ÇÊ¿äÇÒ °æ¿ì ÇØ´ç ¹üÀ§¸¦ Ç¥½ÃÇϴ Ŭ·¡½º¸¦ »ç¿ëÇÏ¿© ƯÁ¤ ¹üÀ§¿¡ Àִ ȯ°æ ¼³Á¤À» Ç¥½ÃÇÏ´Â ½ÇÁ¦ ³ëµå¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¹æ¹ýÀ» »ç¿ëÇϸé ÇÊ¿äÇÑ Æ¯Á¤ °Ë»ö ¼ø¼¸¦ ÁöÁ¤ÇÏ´Â ³ëµå ¹è¿À» ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ½º´ÏÆêÀº À§¿¡¼ »ç¿ëÇÑ °Í°ú µ¿ÀÏÇÑ È¯°æ ¼³Á¤ÀÇ È¯°æ ¼³Á¤ ¼ºñ½º¸¦ Á¶È¸ÇÏÁö¸¸ Ç÷¯±×ÀÎÀÇ ±¸¼º ¹üÀ§À» °Ë»öÇÏ°í µÚÀ̾î Ç÷¯±×ÀÎÀÇ ÀνºÅϽº ¹üÀ§¸¦ °Ë»öÇÕ´Ï´Ù. ³ëµå°¡ °Ë»ö ¼ø¼¿¡ ÁöÁ¤µÇ¸é ±âº» ¹üÀ§ ÁöÁ¤Àº °í·ÁµÇÁö ¾Ê½À´Ï´Ù. Áï, Ç÷§ÆûÀº Á¦°øµÈ Á¤È®ÇÑ ³ëµå¸¸ °Ë»öÇÕ´Ï´Ù.
... IPreferencesService service = Platform.getPreferencesService(); Preferences configurationNode = new ConfigurationScope().getNode("com.example.myplugin"); Preferences instanceNode = new InstanceScope().getNode("com.example.myplugin"); Preferences[] nodes = new Preferences[] {configurationNode, instanceNode}; stringValue = service.get("MyPreference", "true", nodes); //do something with the value. ...
¶ÇÇÑ Ç÷¯±×ÀÎÀº ȯ°æ ¼³Á¤ Æ®¸® ³ëµå¸¦ ÅëÇØ °íÀ¯ ¼øÈ¸¸¦ ±¸ÇöÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ȯ°æ ¼³Á¤ ¼ºñ½º¿¡¼ ȯ°æ ¼³Á¤ Æ®¸®ÀÇ ·çÆ® ³ëµå¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. ¹üÀ§ Ŭ·¡½º¸¦ »ç¿ëÇÏ¿© Æ®¸®¸¦ ÀÚ¼¼È÷ ¼øÈ¸ÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ½º´ÏÆêÀº ƯÁ¤ ³ëµå¸¦ ¼øÈ¸ÇÏ°í ³ëµå ÀÚü¿¡¼ ȯ°æ ¼³Á¤ °ªÀ» °Ë»öÇÕ´Ï´Ù.
... IPreferencesService service = Platform.getPreferencesService(); Preferences root = service.getRootNode(); Preferences myInstanceNode = root.node(InstanceScope.SCOPE).node("com.example.myplugin"); if (myInstanceNode != null) { value = node.getBoolean("MyPreference", "true"); //do something with the value. } ...
Ç÷¯±×ÀÎÀº org.eclipse.core.runtime.preferences È®ÀåÀ» »ç¿ëÇÏ¿© Ư¼öÈµÈ °íÀ¯ ¹üÀ§¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ È®Àå¿¡¼ Ç÷¯±×ÀÎÀº »õ ¹üÀ§ÀÇ È¯°æ ¼³Á¤ ³ëµå¸¦ ÀÛ¼ºÇÒ ¼ö Àִ Ŭ·¡½º»Ó¸¸ ¾Æ´Ï¶ó »õ ¹üÀ§ÀÇ À̸§µµ Á¤ÀÇÇÕ´Ï´Ù. ¼±ÅÃÀûÀ¸·Î ÀÌ Ç÷¯±×ÀÎÀº ÇØ´ç ¹üÀ§¿¡ ÀÖ´Â ±âº» ȯ°æ ¼³Á¤ °ªÀ» ÃʱâÈÇϴ Ŭ·¡½º À̸§À» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. Ç÷¯±×ÀÎÀÌ »õ ¹üÀ§¸¦ ÁöÁ¤ÇÒ ¶§ Ç÷§Æû ¼øÈ¸ ¼ø¼¿Í °ü·ÃµÈ »õ ¹üÀ§¿¡ ¼øÈ¸ ¼ø¼¸¦ ±¸ÇöÇÏ´Â °ÍÀº ÇØ´ç Ç÷¯±×Àο¡ µû¶ó ´Ù¸¨´Ï´Ù. ÇÁ·ÎÁ§Æ® ¹üÀ§ÀÇ È¯°æ ¼³Á¤¿¡ ´ëÇÑ Æ¯Á¤ ¿¹Á¦¸¦ »ç¿ëÇÏ¿© ÀÌ ±â´ÉÀ» ÀÚ¼¼È÷ »ìÆì º¸±â·Î ÇÕ´Ï´Ù.