private WebMarkupContainer getResourceActionPanel(String componentId, ResourceAction action) {
switch (action) {
case RESOURCE_EDIT:
Resource resource = getResourceModel().getObject();
if(GoodResource.class.isAssignableFrom(resource.getClass())) {
return new GoodEditPanel(componentId, this.<GoodResource>getResourceModel());
} else if(ServiceResource.class.isAssignableFrom(resource.getClass())) {
return new ResourceEditPanel<ServiceResource, ResourceFormData>(componentId, this.<ServiceResource>getResourceModel());
} else if(MoneyResource.class.isAssignableFrom(resource.getClass())) {
return new MoneyEditPanel(componentId, this.<MoneyResource>getResourceModel());
} else {