
com.fasterxml.clustermate.api.RequestPathStrategy Maven / Gradle / Ivy
package com.fasterxml.clustermate.api;
/**
* Type that defines how references are built to access
* a StoreMate service node.
*
* @param Path type enumeration used
*/
public abstract class RequestPathStrategy
>
{
/*
/**********************************************************************
/* Methods for building requests paths (by client or server-as-client)
/**********************************************************************å
*/
/**
* Method to call to append path segments of specified type, onto
* partially built base path.
*
* @param basePath Existing path, on to which append specified path segment(s)
*
* @return Path builder after appending specified path
*/
public abstract > B appendPath(B basePath, P type);
/*
/**********************************************************************
/* Methods for decoded requests paths (by server)
/**********************************************************************
*/
/**
* Method for finding which entry point given path matches (if any); and if there
* is a match, consuming matched path.
*/
public abstract P matchPath(DecodableRequestPath pathDecoder);
}