All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.ironcorelabs.sdk.UserDevice Maven / Gradle / Ivy

There is a newer version: 0.16.0
Show newest version
// Automatically generated by rust_swig
package com.ironcorelabs.sdk;

/**
 * Metadata about a user device.
 */
public final class UserDevice {

    private UserDevice() {}
    /**
     * Get the unique id for the device
     */
    public final DeviceId getId() {
        long ret = do_getId(mNativeObj);
        DeviceId convRet = new DeviceId(InternalPointerMarker.RAW_PTR, ret);

        return convRet;
    }
    private static native long do_getId(long self);
    /**
     * Get the devices optional non-unique readable name
     */
    public final java.util.Optional getName() {
        long ret = do_getName(mNativeObj);
        java.util.Optional convRet;
        if (ret != 0) {
            convRet = java.util.Optional.of(new DeviceName(InternalPointerMarker.RAW_PTR, ret));
        } else {
            convRet = java.util.Optional.empty();
        }

        return convRet;
    }
    private static native long do_getName(long self);
    /**
     * Get the time the device was created
     */
    public final java.util.Date getLastUpdated() {
        long ret = do_getLastUpdated(mNativeObj);
        java.util.Date convRet = new java.util.Date(ret);

        return convRet;
    }
    private static native long do_getLastUpdated(long self);
    /**
     * Get the time the device was last updated
     */
    public final java.util.Date getCreated() {
        long ret = do_getCreated(mNativeObj);
        java.util.Date convRet = new java.util.Date(ret);

        return convRet;
    }
    private static native long do_getCreated(long self);
    /**
     * True if this device instance is the one that was used to make
     * the API request
     */
    public final boolean isCurrentDevice() {
        boolean ret = do_isCurrentDevice(mNativeObj);

        return ret;
    }
    private static native boolean do_isCurrentDevice(long self);

    public synchronized void delete() {
        if (mNativeObj != 0) {
            do_delete(mNativeObj);
            mNativeObj = 0;
       }
    }
    @Override
    protected void finalize() throws Throwable {
        try {
            delete();
        }
        finally {
             super.finalize();
        }
    }
    private static native void do_delete(long me);
    /*package*/ UserDevice(InternalPointerMarker marker, long ptr) {
        assert marker == InternalPointerMarker.RAW_PTR;
        this.mNativeObj = ptr;
    }
    /*package*/ long mNativeObj;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy