Hide definition of MXS_FILTER_DEF

MXS_FILTER_DEF is now private the MaxScale core.
This commit is contained in:
Johan Wikman
2017-01-13 14:59:58 +02:00
parent 41d2d65e71
commit c13a2eeb33
8 changed files with 54 additions and 32 deletions

View File

@ -93,11 +93,9 @@ bool cache_command_show(const MODULECMD_ARG* pArgs)
const MXS_FILTER_DEF* pFilterDef = pArgs->argv[1].value.filter;
ss_dassert(pFilterDef);
ss_dassert(strcmp(pFilterDef->module, MXS_MODULE_NAME) == 0);
CacheFilter* pFilter = reinterpret_cast<CacheFilter*>(filter_def_get_instance(pFilterDef));
CacheFilter* pFilter = reinterpret_cast<CacheFilter*>(pFilterDef->filter);
pFilter->cache().show(pDcb);
MXS_EXCEPTION_GUARD(pFilter->cache().show(pDcb));
return true;
}

View File

@ -685,7 +685,7 @@ bool dbfw_reload_rules(const MODULECMD_ARG *argv)
{
bool rval = true;
MXS_FILTER_DEF *filter = argv->argv[0].value.filter;
FW_INSTANCE *inst = (FW_INSTANCE*)filter->filter;
FW_INSTANCE *inst = (FW_INSTANCE*)filter_def_get_instance(filter);
if (modulecmd_arg_is_present(argv, 1))
{
@ -750,7 +750,7 @@ bool dbfw_show_rules(const MODULECMD_ARG *argv)
{
DCB *dcb = argv->argv[0].value.dcb;
MXS_FILTER_DEF *filter = argv->argv[1].value.filter;
FW_INSTANCE *inst = (FW_INSTANCE*)filter->filter;
FW_INSTANCE *inst = (FW_INSTANCE*)filter_def_get_instance(filter);
dcb_printf(dcb, "Rule, Type, Times Matched\n");

View File

@ -43,9 +43,7 @@ bool masking_command_reload(const MODULECMD_ARG* pArgs)
const MXS_FILTER_DEF* pFilterDef = pArgs->argv[1].value.filter;
ss_dassert(pFilterDef);
ss_dassert(strcmp(pFilterDef->module, MXS_MODULE_NAME) == 0);
MaskingFilter* pFilter = reinterpret_cast<MaskingFilter*>(pFilterDef->filter);
MaskingFilter* pFilter = reinterpret_cast<MaskingFilter*>(filter_def_get_instance(pFilterDef));
MXS_EXCEPTION_GUARD(pFilter->reload(pDcb));

View File

@ -807,14 +807,15 @@ int detect_loops(TEE_INSTANCE *instance, HASHTABLE* ht, SERVICE* service)
for (i = 0; i < svc->n_filters; i++)
{
if (strcmp(svc->filters[i]->module, "tee") == 0)
const char* module = filter_def_get_module_name(svc->filters[i]);
if (strcmp(module, "tee") == 0)
{
/*
* Found a Tee filter, recurse down its path
* if the service name isn't already in the hashtable.
*/
TEE_INSTANCE* ninst = (TEE_INSTANCE*) svc->filters[i]->filter;
TEE_INSTANCE* ninst = (TEE_INSTANCE*)filter_def_get_instance(svc->filters[i]);
if (ninst == NULL)
{
/**
@ -825,7 +826,7 @@ int detect_loops(TEE_INSTANCE *instance, HASHTABLE* ht, SERVICE* service)
}
SERVICE* tgt = ninst->service;
if (detect_loops((TEE_INSTANCE*) svc->filters[i]->filter, ht, tgt))
if (detect_loops(ninst, ht, tgt))
{
return true;
}