public function resetCache(Model $model, $id = null) {
        $alias = $model->alias;

        if ($getList = $this->settings[$alias]['methodKeys']['getList']) {
            $this->deleteCache($model, array($alias . '::' . $getList));
        }

        if ($getCount = $this->settings[$alias]['methodKeys']['getCount']) {
            $this->deleteCache($model, array($alias . '::' . $getCount));
        }

        if (!$id) {
            return false;

        } else if (!is_array($id)) {
            $id = array('id' => $id);
        }

        $resetHooks = $this->settings[$alias]['resetHooks'];

        if ($resetHooks) {
            foreach ($resetHooks as $key => $args) {
                $continue = true;
                $keys = array($alias . '::' . $key);

                if (is_array($args)) {
                    foreach ($args as $field) {
                        if (isset($id[$field])) {
                            $keys[] = $id[$field];
                        } else {
                            $continue = false;
                            break;
                        }
                    }
                }

                if ($continue) {
                    $this->deleteCache($model, $keys);
                }
            }
        }

        return true;
    }