// Path: src/main/java/com/github/sheigutn/pushbullet/http/defaults/delete/DeleteSpecificBlockRequest.java
// public class DeleteSpecificBlockRequest extends DeleteRequest<Void> {
// 
//     public DeleteSpecificBlockRequest(String blockIdentity) {
//         super(Urls.BLOCKS + "/" + blockIdentity);
//     }
// }
// 
// Path: src/main/java/com/github/sheigutn/pushbullet/interfaces/Deletable.java
// @FunctionalInterface
// public interface Deletable {
// 
//     /**
//      * Used to delete this object
//      */
//     void delete();
// }
// 
// Path: src/main/java/com/github/sheigutn/pushbullet/items/PushbulletObject.java
// @Data
// public abstract class PushbulletObject extends PushbulletIdentifiable {
// 
//     /**
//      * Creation timestamp of this object
//      */
//     private Number created;
// 
//     /**
//      * Last modification timestamp of this object
//      */
//     private Number modified;
// 
//     /**
//      * Whether this object is active or not
//      */
//     private boolean active = true;
// }
// 
// Path: src/main/java/com/github/sheigutn/pushbullet/items/user/BlockedUser.java
// @Getter
// @ToString(callSuper = true)
// @NoArgsConstructor(access = AccessLevel.PRIVATE)
// public class BlockedUser extends PushbulletIdentifiable {
// 
//     /**
//      * The email of this user
//      */
//     private String email;
// 
//     /**
//      * The normalized email of this user
//      */
//     @SerializedName("email_normalized")
//     private String normalizedEmail;
// 
//     /**
//      * The name of this user
//      */
//     private String name;
// 
//     /**
//      * The url to the image of this user
//      */
//     @SerializedName("image_url")
//     private String imageUrl;
// }


import com.github.sheigutn.pushbullet.http.defaults.delete.DeleteSpecificBlockRequest;
import com.github.sheigutn.pushbullet.interfaces.Deletable;
import com.github.sheigutn.pushbullet.items.PushbulletObject;
import com.github.sheigutn.pushbullet.items.user.BlockedUser;
import lombok.AccessLevel;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.ToString;
package com.github.sheigutn.pushbullet.items.block;


@Getter
@ToString(callSuper = true)
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public class Block extends PushbulletObject implements Deletable {

    private BlockedUser user;

    @Override
    public void delete() {
        if(!isActive()) return;
// Path: src/main/java/com/github/sheigutn/pushbullet/http/defaults/delete/DeleteSpecificBlockRequest.java
// public class DeleteSpecificBlockRequest extends DeleteRequest<Void> {
// 
//     public DeleteSpecificBlockRequest(String blockIdentity) {
//         super(Urls.BLOCKS + "/" + blockIdentity);
//     }
// }
// 
// Path: src/main/java/com/github/sheigutn/pushbullet/interfaces/Deletable.java
// @FunctionalInterface
// public interface Deletable {
// 
//     /**
//      * Used to delete this object
//      */
//     void delete();
// }
// 
// Path: src/main/java/com/github/sheigutn/pushbullet/items/PushbulletObject.java
// @Data
// public abstract class PushbulletObject extends PushbulletIdentifiable {
// 
//     /**
//      * Creation timestamp of this object
//      */
//     private Number created;
// 
//     /**
//      * Last modification timestamp of this object
//      */
//     private Number modified;
// 
//     /**
//      * Whether this object is active or not
//      */
//     private boolean active = true;
// }
// 
// Path: src/main/java/com/github/sheigutn/pushbullet/items/user/BlockedUser.java
// @Getter
// @ToString(callSuper = true)
// @NoArgsConstructor(access = AccessLevel.PRIVATE)
// public class BlockedUser extends PushbulletIdentifiable {
// 
//     /**
//      * The email of this user
//      */
//     private String email;
// 
//     /**
//      * The normalized email of this user
//      */
//     @SerializedName("email_normalized")
//     private String normalizedEmail;
// 
//     /**
//      * The name of this user
//      */
//     private String name;
// 
//     /**
//      * The url to the image of this user
//      */
//     @SerializedName("image_url")
//     private String imageUrl;
// }


// Path: src/main/java/com/github/sheigutn/pushbullet/items/block/Block.java
import com.github.sheigutn.pushbullet.http.defaults.delete.DeleteSpecificBlockRequest;
import com.github.sheigutn.pushbullet.interfaces.Deletable;
import com.github.sheigutn.pushbullet.items.PushbulletObject;
import com.github.sheigutn.pushbullet.items.user.BlockedUser;
import lombok.AccessLevel;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.ToString;

package com.github.sheigutn.pushbullet.items.block;


@Getter
@ToString(callSuper = true)
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public class Block extends PushbulletObject implements Deletable {

    private BlockedUser user;

    @Override
    public void delete() {
        if(!isActive()) return;
        getPushbullet().executeRequest(new DeleteSpecificBlockRequest(getIdentity()));