aboutsummaryrefslogtreecommitdiffstats
path: root/vespajlib/src/main/java/com/yahoo/nativec/NativeC.java
blob: 02cb4b20570b03f32741f75c6b04b0d6473e290c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.nativec;

import com.sun.jna.Native;
import com.sun.jna.Platform;

class NativeC {
    static Throwable loadLibrary(Class<?> cls) {
        if (Platform.isLinux()) {
            try {
                Native.register(cls, Platform.C_LIBRARY_NAME);
            } catch (Throwable e) {
                return e;
            }
        } else {
            return new RuntimeException("Platform is unsupported. Only supported on Linux.");
        }
        return null;
    }

}