// ĠCopyright Ġ 2 0 0 0 - 2 0 2 0 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ package Ġorg . jetbrains . idea . maven . execution . target Ċ Ċ import Ġcom . intellij . execution . target . Target Environment Configuration Ċ import Ġcom . intellij . execution . target . get Runtime Type Ċ import Ġcom . intellij . openapi . options . Bound Configurable Ċ import Ġcom . intellij . openapi . options . Configurable Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . openapi . ui . Dialog Panel Ċ import Ġcom . intellij . openapi . ui . Text Component Accessor Ċ import Ġcom . intellij . openapi . ui . TextField With Browse Button Ċ import Ġcom . intellij . ui . layout .* Ċ import Ġcom . jetbrains . plugins . rem otes dk . target . ssh . target . Ssh Target Environment Configuration Ċ import Ġcom . jetbrains . plugins . rem otes dk . target . ssh . target . Ssh Target Type Ċ import Ġorg . jetbrains . idea . maven . execution . Runner Bundle . message Ċ Ċ class ĠMaven On Ssh Configurable Factory Ġ: ĠMaven Runtime UI Factory Ġ{ ĊĠ Ġoverride Ġfun Ġcreate Configurable ( project : ĠProject , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmaven Runtime Target Configuration : ĠMaven Runtime Target Configuration , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtarget Environment Configuration : ĠTarget Environment Configuration ): ĠConfigur able ? Ġ{ ĊĠĠĠ Ġif Ġ( target Environment Configuration Ġ! is ĠSsh Target Environment Configuration ) Ġreturn Ġnull ĊĠĠĠ Ġreturn ĠMaven On Ssh Target UI ( project , Ġmaven Runtime Target Configuration , Ġtarget Environment Configuration ) ĊĠ Ġ} ĊĊĠ Ġclass ĠMaven On Ssh Target UI ( private Ġval Ġproject : ĠProject , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġconfig : ĠMaven Runtime Target Configuration , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġtarget : ĠSsh Target Environment Configuration ) Ġ: ĠBound Configurable ( config . displayName , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . get Runtime Type (). help Topic ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġcreate Panel (): ĠDialog Panel Ġ{ ĊĠĠĠĠĠ Ġreturn Ġpanel Ġ{ ĊĠĠĠĠĠĠĠ Ġrow ( message (" maven . target . configurable . home . path . label ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġval Ġtext Field With Browse Button Ġ= ĠTextField With Browse Button () ĊĠĠĠĠĠĠĠĠĠ Ġval Ġbrowser Ġ= ĠSsh Target Type . create File Browser ( project , Ġ{ Ġtarget . find Ssh Config ( project ) Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage (" maven . target . configurable . home . path . label "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠText Component Accessor . TEXT _ FIELD _ W HO LE _ TEXT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Field With Browse Button . textField ) ĊĠĠĠĠĠĠĠĠĠ Ġtext Field With Browse Button . addActionListener ( browser ) ĊĠĠĠĠĠĠĠĠĠ Ġtext Field With Browse Button . text Ġ= Ġconfig . home Path ĊĠĠĠĠĠĠĠĠĠ Ġcomponent ( textField With Browse Button ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Binding ( TextField With Browse Button :: getText , ĠTextField With Browse Button :: setText , Ġconfig :: home Path . to Binding ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. comment ( message (" maven . target . configurable . home . path . comment "), Ġfor Component Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } ĊĊ