ludc
2025-01-16 986aa62ed00bee39363bab41b4eeb8259d446efd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.vci.client.portal.UI.v3;
 
import java.awt.Toolkit;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.io.IOException;
 
import com.vci.common.utility.ObjectUtility;
 
public class UICopyClipboardUtil {
    public static final String CONTENTS_SPLIT_CHAR = ObjectUtility.seperator;
    public static void addStringContent(String content){
        Toolkit.getDefaultToolkit().getSystemClipboard().setContents(
                new StringSelection(content), null);
    }
 
    public static void addStringContent(String[] contents){
        StringBuffer sb = new StringBuffer();
        for(String content : contents){
            sb.append(content).append(CONTENTS_SPLIT_CHAR);
        }
        addStringContent(sb.toString());
    }
    
    public static String getStringContent() throws UnsupportedFlavorException, IOException{
        String res = null;
        Transferable trans = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);
        if(Toolkit.getDefaultToolkit().getSystemClipboard().isDataFlavorAvailable(DataFlavor.stringFlavor)){
            Object obj = trans.getTransferData(DataFlavor.stringFlavor);
            if(obj instanceof String){
                res = (String)obj;
            }
        }
        return res;
    }
 
    public static String[] getStringContents() throws UnsupportedFlavorException, IOException{
        String[] res = null;
        String content = getStringContent();
        if(content != null && !"".equals(content)){
            res = content.toString().split(CONTENTS_SPLIT_CHAR);
        }
        return res;
    }
}