Relation samples
Basics
Example of uuid:
- Using UUID -> "f123a950-0329-4d62-8328-0ff500fd42db";
Methods
getRelationTypes
Description:
| Method | Return values | Description | 
|---|---|---|
| getRelationTypes(String type) | List<RelationType> | Retrieves a list of all relations defined of a type. | 
| Available types values: 
 More information at Relation types. | ||
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.RelationType;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (RelationType type : ws.getRelationTypes(RelationType.BIDIRECTIONAL)) {
                System.out.println(type);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
addRelation
Description:
| Method | Return values | Description | 
|---|---|---|
| addRelation(String nodeAId, String nodeBId, long relTypeId) | void | Sets a relation between two nodes. | 
| The parameters nodeAId and nodeBId should be any valid document, folder, mail or record UUID. | ||
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.RelationType;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (RelationType type : ws.getRelationTypes(RelationType.BIDIRECTIONAL)) {
                // looking for a relation named invoice
                if (type.getTitle().equals("invoice")) {
                    // Relation invoice with budget
                    ws.addRelation("46762f90-82c6-4886-8d21-ad3017dd78a7", "8cd1e072-8595-4dd3-b121-41d622c43f08", type.getId());
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
deleteRelation
Description:
| Method | Return values | Description | 
|---|---|---|
| deleteRelation(long relationId) | void | Deletes a relation. | 
| Only when the relation will not be used by any node is able to be deleted, otherwise you'll get an error. | ||
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Relation;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (Relation relation : ws.getRelations("46762f90-82c6-4886-8d21-ad3017dd78a7")) {
                // looking for a relation named invoice
                if (relation.getRelationTitle().equals("invoice")) {
                    ws.deleteRelation(relation.getId());
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
getRelations
Description:
| Method | Return values | Description | 
|---|---|---|
| getRelations(String uuid) | List<Relation> | Retrieves a list of all relations of a node.. | 
| The parameters uuid should be any valid document, folder, mail or record UUID. | ||
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Relation;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (Relation relation : ws.getRelations("46762f90-82c6-4886-8d21-ad3017dd78a7")) {
                System.out.println(relation);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
getRelationGroups
Description:
| Method | Return values | Description | 
|---|---|---|
| getRelationGroups(String uuid) | List<RelationGroup> | Retrieves a list of all relation groups of a node. | 
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.RelationGroup;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (RelationGroup rg : ws.getRelationGroups("46762f90-82c6-4886-8d21-ad3017dd78a7")) {
                System.out.println(rg);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
addRelationGroup
Description:
| Method | Return values | Description | 
|---|---|---|
| addRelationGroup(String uuid, String groupName, long type) | void | Adds a relation group at a node. | 
| On a relation group only has sense to apply a relation type of RelationType.MANY_TO_MANY. More information at Relation types. | ||
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.RelationType;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (RelationType type : ws.getRelationTypes(RelationType.MANY_TO_MANY)) {
                if (type.getTitle().equals("staple")) {
                    ws.addRelationGroup("46762f90-82c6-4886-8d21-ad3017dd78a7", "staple group", type.getId());
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
addNodeToGroup
Description:
| Method | Return values | Description | 
|---|---|---|
| addNodeToGroup(String uuid, long groupId) | void | Adds a node to an existing relation group. | 
| On a relation group only has sense apply the type RelationType.MANY_TO_MANY. More information at Relation types. | ||
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.RelationGroup;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (RelationGroup rg : ws.getRelationGroups("46762f90-82c6-4886-8d21-ad3017dd78a7")) {
                if (rg.getName().equals("staple group")) {
                    ws.addNodeToGroup("8f101a85-88e7-4abe-8175-c5fea3e17d8b", rg.getId());
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
deleteRelationGroup
Description:
| Method | Return values | Description | 
|---|---|---|
| deleteRelationGroup(long groupId) | void | Remove relation group from a node | 
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.RelationGroup;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (RelationGroup rg : ws.getRelationGroups("8f101a85-88e7-4abe-8175-c5fea3e17d8b")) {
                if (rg.getName().equals("staple group")) {
                    ws.deleteRelationGroup(rg.getId());
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
findRelationGroup
Description:
| Method | Return values | Description | 
|---|---|---|
| findRelationGroup(long groupId) | RelationGroup | Finds a relation group by id. | 
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            long groupId = 1;
            System.out.println(ws.findRelationGroup(groupId));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
setRelationGroupName
Description:
| Method | Return values | Description | 
|---|---|---|
| setRelationGroupName(long groupId, String groupName) | void | Changes the relation group name. | 
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            long groupId = 1;
            ws.setRelationGroupName(groupId, "new name");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
getAllRelationGroups
Description:
| Method | Return values | Description | 
|---|---|---|
| getAllRelationGroups() | List<RelationGroup> | Retrieves a list of all relation groups. | 
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.RelationGroup;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (RelationGroup rg : ws.getAllRelationGroups()) {
                System.out.println(rg);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
deleteRelationGroupItem
Description:
| Method | Return values | Description | 
|---|---|---|
| deleteRelationGroupItem(String uuid, long groupId) | void | Remove a node from a relation group. | 
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.RelationGroup;
public class Test {
    public static void main(String[] args) {
        String host = "http://localhost:8080/openkm";
        String user = "okmAdmin";
        String password = "admin";
        OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
        try {
            ws.login(user, password);
            for (RelationGroup rg : ws.getRelationGroups("930baee0-8712-41b0-85c0-81d21e55742f")) {
                if (rg.getName().equals("staple")) {
                    ws.deleteRelationGroupItem("930baee0-8712-41b0-85c0-81d21e55742f", rg.getId());
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
 
                   
                  