James Moger
2014-04-22 859deba551b5e6850fb6331084493a402cecce45
src/site/plugins_extensions.mkd
@@ -185,3 +185,47 @@
}
```
### Request Filter
*SINCE 1.6.0*
You can provide your own custom request filter by subclassing the *HttpRequestFilter* class.
```java
import com.gitblit.extensions.HttpRequestFilter;
import ro.fortsoft.pf4j.Extension;
@Extension
public class MyRequestFilter extends HttpRequestFilter {
    @Override
    public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain chain) throws IOException, ServletException {
    }
}
```
### User Menu Items
*SINCE 1.6.0*
You can provide your own user menu items by subclassing the *UserMenuExtension* class.
```java
import java.util.Arrays;
import java.util.List;
import ro.fortsoft.pf4j.Extension;
import com.gitblit.extensions.UserMenuExtension;
import com.gitblit.models.Menu.ExternalLinkMenuItem;
import com.gitblit.models.Menu.MenuItem;
import com.gitblit.models.UserModel;
@Extension
public class MyUserMenuContributor extends UserMenuExtension {
    @Override
    public List<MenuItem> getMenuItems(UserModel user) {
        return Arrays.asList((MenuItem) new ExternalLinkMenuItem("Github", String.format("https://github.com/%s", user.username));
    }
}
```