Digital ocean Cloud Plugin

I’m learning about custom cloud plugin development. So I’m working on the Digital Ocean plugin, which is already on morpheus gitlab. I modified the existing digital ocean build.gradle based on our environment, then attempted to create the build and received the following error.

Task :compileGroovy FAILED
startup failed:
C:\Users\Ibrahim\Desktop\morpheus-cloud-plugin-13\src\main\groovy\com\morpheusdata\cloud\DigitalOceanCloudProvider.groovy: 226: The return type of void refresh(com.morpheusdata.model.Cloud) in com.morpheusdata.cloud.DigitalOceanCloudProvider is incompatible with com.morpheusdata.response.ServiceResponse in com.morpheusdata.core.CloudProvider
. At [226:2] @ line 226, column 2.
@Override
^

C:\Users\Ibrahim\Desktop\morpheus-cloud-plugin-13\src\main\groovy\com\morpheusdata\cloud\DigitalOceanCloudProvider.groovy: 57: Method ‘getHasComputeZonePools’ from class ‘com.morpheusdata.cloud.DigitalOceanCloudProvider’ does not override method from its superclass or interfaces but is annotated with @Override.
@ line 57, column 2.
@Override
^

2 errors

If I removed the @override getting the diffrent error from com.morpheusdata.response.ServiceResponse.

startup failed:
C:\Users\Ibrahim\Desktop\morpheus-cloud-plugin-13\src\main\groovy\com\morpheusdata\cloud\DigitalOceanCloudProvider.groovy: 20: Can’t have an abstract method in a non-abstract class. The class ‘com.morpheusdata.cloud.DigitalOceanCloudProvider’ must be declared abstract or the method ‘com.morpheusdata.model.Icon getIcon()’ must be implemented.
@ line 20, column 1.
@Slf4j
^

C:\Users\Ibrahim\Desktop\morpheus-cloud-plugin-13\src\main\groovy\com\morpheusdata\cloud\DigitalOceanCloudProvider.groovy: 20: Can’t have an abstract method in a non-abstract class. The class ‘com.morpheusdata.cloud.DigitalOceanCloudProvider’ must be declared abstract or the method ‘com.morpheusdata.response.ServiceResponse refresh(com.morpheusdata.model.Cloud)’ must be implemented.
@ line 20, column 1.
@Slf4j