Mentawai Web Framework
MentaContainer
MentaBean
MentaRegex
Kawai Wiki
MentaTutorials
Sandbox
Català-Valencià - Catalan
中文 - Chinese (Simplified)
中文 - Chinese (Traditional)
Česky - Czech
Dansk - Danish
Nederlands - Dutch
English - English
Suomi - Finnish
Français - French
Deutsch - German
עברית - Hebrew
हिंदी - Hindi
Magyar - Hungarian
Bahasa Indonesia - Indonesian
Italiano - Italian
日本語 - Japanese
한국어 - Korean
Македонски - Macedonian
मराठी - Marathi
Norsk - Norwegian
Polski - Polish
Português - Portuguese
Português - Portuguese (Brazil)
Русский - Russian
Slovenčina - Slovak
Slovenščina - Slovenian
Español - Spanish
Svenska - Swedish
Türkçe - Turkish
Українська - Ukrainian
Oëzbekcha - Uzbek
MentaContainer
(root)
/
tags
/
menta-container-0.9.6
/
src
/
main
/
java
/
org
/
mentacontainer
/
impl
/
GenericComponent.java
- Rev 79
Rev
Rev 52
|
Blame
|
Compare with Previous
|
Last modification
|
View Log
|
RSS feed
package
org.mentacontainer.impl
;
import
java.lang.reflect.Method
;
import
org.mentacontainer.Component
;
import
org.mentacontainer.util.FindMethod
;
public
class
GenericComponent
implements
Component
{
private
final
Object
factory
;
private
final
Method
method
;
public
GenericComponent
(
Object
factory,
String
methodName
)
{
this
.
factory
= factory
;
try
{
this
.
method
= FindMethod.
getMethod
(
factory.
getClass
(
)
, methodName,
new
Class
[
]
{
}
)
;
this
.
method
.
setAccessible
(
true
)
;
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
e
)
;
}
}
public
<
T
>
T getInstance
(
)
{
try
{
return
(
T
)
method.
invoke
(
factory,
(
Object
[
]
)
null
)
;
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
"Cannot invoke method: "
+ method, e
)
;
}
}
}