Folder samples
Basics
Section titled “Basics”On most methods, you’ll see the parameter named “fldId”. The value of this parameter can be a valid folder UUID.
Suggested code sample
Section titled “Suggested code sample”First, you must create the webservice object:
OKMWebservices ws = OKMWebservicesFactory.newInstance(host);Then you should log in using the method “login”. You can access the “login” method from the web service object “ws” as shown below:
ws.login(user, password);At this point you can use all the Folder methods of “folder” class as shown below:
ws.folder.create("1be884f4-5758-4985-94d1-f18bfe004db8", "test");Methods
Section titled “Methods”create
Section titled “create”Description:
| Method | Return values | Description |
|---|---|---|
| create(String fldId, String name) | Folder | Creates a new folder and returns a Folder object. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); ws.folder.create("f123a950-0329-4d62-8328-0ff500fd42db", "test"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}create
Section titled “create”Description:
| Method | Return values | Description |
|---|---|---|
| create(String uuid, String name, long nodeClass) | Folder | Creates a new folder and returns a Folder object. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); long nodeClass = 0; ws.folder.create("f123a950-0329-4d62-8328-0ff500fd42db", "test", nodeClass); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}createWithPropertyGroup
Section titled “createWithPropertyGroup”Description:
| Method | Return values | Description |
|---|---|---|
| createWithPropertyGroup(String uuid, String name, long nodeClass, String grpName, Dictionary<String, String> properties) | Folder | Creates a new folder together with a metadata group in a single atomic call, and returns a Folder object. |
The grpName should be a valid Metadata group name.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); long nodeClass = 0; Dictionary<String, String> props = new Dictionary<String, String>(); props.Add("okp:consulting.name", "test"); ws.folder.createWithPropertyGroup("f123a950-0329-4d62-8328-0ff500fd42db", "test", nodeClass, "okg:consulting", props); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getProperties
Section titled “getProperties”Description:
| Method | Return values | Description |
|---|---|---|
| getProperties(String fldId) | Folder | Returns the folder properties. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); System.Console.WriteLine(ws.folder.getProperties("f123a950-0329-4d62-8328-0ff500fd42db").toString()); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}delete
Section titled “delete”Description:
| Method | Return values | Description |
|---|---|---|
| delete(String fldId) | void | Deletes a folder. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); ws.folder.delete("f123a950-0329-4d62-8328-0ff500fd42db"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}rename
Section titled “rename”Description:
| Method | Return values | Description |
|---|---|---|
| rename(String fldId, String newName) | Folder | Renames a folder. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); // Exists folder /okm:root/test ws.folder.rename("f123a950-0329-4d62-8328-0ff500fd42db", "renamedFolder"); // Folder has renamed to /okm:root/renamedFolder } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}Description:
| Method | Return values | Description |
|---|---|---|
| move(String fldId, String dstId) | void | Moves a folder into another folder or record. |
The values of the dstId parameter should be a folder or record UUID or a path.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); // Exists folder /okm:root/test ws.folder.move("f123a950-0329-4d62-8328-0ff500fd42db", "ac165cab-a62a-4b17-89fc-2480a1d784db"); // Folder has moved to /okm:root/tmp/test } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getChildren
Section titled “getChildren”Description:
| Method | Return values | Description |
|---|---|---|
| getChildren(String fldId) | List |
Returns a list of all folders whose parent is fldId. |
The parameter fldId can be a folder or a record node.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); foreach (Folder fld in ws.folder.getChildren("f123a950-0329-4d62-8328-0ff500fd42db")) { System.Console.WriteLine(fld.toString()); } } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}isValid
Section titled “isValid”Description:
| Method | Return values | Description |
|---|---|---|
| isValid(String fldId) | Boolean | Returns a boolean that indicates whether the node is a folder. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); // Return true ws.folder.isValid("f123a950-0329-4d62-8328-0ff500fd42db"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getPath
Section titled “getPath”Description:
| Method | Return values | Description |
|---|---|---|
| getPath(String uuid) | String | Converts a folder UUID to a folder path. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); System.Console.WriteLine(ws.folder.getPath("f123a950-0329-4d62-8328-0ff500fd42db")); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}Description:
| Method | Return values | Description |
|---|---|---|
| copy(String fldId, String dstId, String newName) | Folder | Copies a folder into a folder or record. |
The values of the dstId parameter should be a folder or record UUID or a path.
When the newName parameter value is null, the folder will preserve the same name.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); ws.folder.copy("f123a950-0329-4d62-8328-0ff500fd42db", "a321a950-0329-4d62-8328-0ff500fd42db", "new_name"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}extendedCopy
Section titled “extendedCopy”Description:
| Method | Return values | Description |
|---|---|---|
| extendedCopy(String fldId, String dstId, String newName, bool categories, bool keywords, bool propertyGroups, bool notes, bool wiki, bool security) | Folder | Copies a folder with associated data into another folder or record. |
The values of the dstId parameter should be a folder or record UUID.
When the newName parameter value is null, the folder will preserve the same name.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); ws.folder.extendedCopy("f123a950-0329-4d62-8328-0ff500fd42db", "055e4384-7c70-4456-b32b-f5a55a79861f", "new_name", true, true, true, true, true, true); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getContentInfo
Section titled “getContentInfo”Description:
| Method | Return values | Description |
|---|---|---|
| getContentInfo(String fldId) | ContentInfo | Returns a ContentInfo object with information about the folder. |
The ContentInfo object retrieves information about:
- The number of folders.
- The number of documents.
- The number of records.
- The number of emails.
- The size in bytes of all objects in the folder.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password);System.Console.WriteLine(ws.folder.getContentInfo(fldUUid).toString()); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}Description:
| Method | Return values | Description |
|---|---|---|
| purge(String fldId) | void | The folder is permanently removed from the repository. |
Usually, you will purge folders into /okm:trash/userId - the personal trash user location - but it is possible to directly purge any folder from the repository.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); ws.folder.purge("f123a950-0329-4d62-8328-0ff500fd42db"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}setStyle
Section titled “setStyle”Description:
| Method | Return values | Description |
|---|---|---|
| setStyle(String fldId, long styleId) | void | Sets the folder style. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); ws.folder.setStyle("f123a950-0329-4d62-8328-0ff500fd42db", 1); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}createMissingFolders
Section titled “createMissingFolders”Description:
| Method | Return values | Description |
|---|---|---|
| createMissingFolders(String fldPath) | void | Creates missing folders. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); ws.folder.createMissingFolders("/okm:root/missingfld1/missingfld2/missingfld3"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}setDescription
Section titled “setDescription”Description:
| Method | Return values | Description |
|---|---|---|
| setDescription(string fldId, String description) | void | Sets the folder description. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); ws.folder.setDescription("f123a950-0329-4d62-8328-0ff500fd42db","Any description"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}createFromTemplate
Section titled “createFromTemplate”Description:
| Method | Return values | Description |
|---|---|---|
| createFromTemplate(String uuid, String dstPath, bool categories, bool keywords, bool notes, bool propertyGroups, bool security Dictionary<String, String> properties) | Folder | Creates a new folder from the template and returns a Folder object. |
The uuid parameter is the template file.
The dstPath can be a folder or a record path.
When the template uses metadata groups to fill in fields, these values are mandatory and must be set in the properties parameter.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); Dictionary<String, String> properties = new Dictionary<String, String>(); properties.Add("okp:tpl.name", "Some name"); DateTime date = DateTime.Now; // Value must be converted to String ISO 8601 compliant properties.Add("okp:tpl.bird_date", ISO8601.formatBasic(date)); properties.Add("okp:tpl.language", "[ \"java\" ]"); Folder foder = ws.folder.createFromTemplate("9fa9787e-d8b0-4ff7-905a-a89f0b228ec8", "/okm:root/test/dst", true, true, false, true, true, properties)); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}