How to use Permissions API

Okay, forget what I just said in the comment about hasPermission.

Sponge uses an interface called Subject as the base for all objects that can have permissions. There are two types of subjects: permissibles and permission holders.

Permissibles are subjects such as Player, who hold permissions but are not specific to a particular permissions plugin. Permissibles simply look up a permission holder and delegate all the Subject methods to it. In your case, you do not write these.

Permission holders are Subjects that are provided by a particular PermissionService and do the real work. In your case, you do write these. However, to be able to provide these to permissibles, you need to write a new PermissionService.

Be aware that Sponge can only have one PermissionService active at a time.