untitled

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "untitled"

Transcription

1 API... 3 Class Cache... 5 Class ConnectionPool Class DataBind Class Log Class Module Class Monitor Class Repository Class Service Class Viewer API Class Program Class Publisher Class Scheduler API OZLauncherDll FORCS Co., LTD 1

2 OZ API Developer's Guide User Data Store UDS UDS UDS User Security Logic USL USL USL C SchedulerCom FORCS Co., LTD

3 API Class Cache Class ConnectionPool Class DataBind Class Log Class Module Class Monitor Class Repository Class Service Class Viewer FORCS Co., LTD 3

4 OZ API Developer's Guide API. API. Cache Connection Pool DataBind Log Module Monitor Repository Service Viewer.. Pool JDBC/ODBC,..,,....,,,.,. API. ozsfw35.jar log4.jar Scheduler server. Server Log. (API classpath "log4.jar" ) 4 FORCS Co., LTD

5 Constructor Summary Cache(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) Cache(String url, String id, String pw, boolean bautologin, boolean useusl) Method Summary SortProperties getcacheconfiguration() void setcacheconfiguration(sortproperties p) Constructor Detail //Daemon - TCP Server public Cache(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) //Servlet - HTTP Server public Cache(String url, String id, String pw, boolean bautologin, boolean useusl) Argument url ip port id Servlet URL ex) String url = "http:// /oz/server"; Daemon IP ex) String ip = " "; Daemon ex) int port = 8003; ex) String id = "admin"; FORCS Co., LTD 5

6 OZ API Developer's Guide pw bautologin useusl ex) String pw = "admin"; ex) boolean bautologin = true; USL ex) boolean useusl = false; Method Detail getcacheconfigration public SortProperties getcacheconfigration() throws OZCPException. "SortProperties" key. setcacheconfiguration public void setcacheconfiguration(sortproperties p) throws OZCPException. "SortProperties" key. Argument p Class OZCPException(oz.framework.cp.OZCPException) API Exception. API OZCPException. - getmessage public String getmessage(). 6 FORCS Co., LTD

7 geterrorcode public int geterrorcode(). SortProperties(oz.util.SortProperties.java) getcacheconfigration(), setcacheconfiguration(). - getproperty public synchronized String getproperty(string key) key. setproperty public synchronized Object setproperty(string key, String value) key (value). - Key getproperty() setproperty() key. Key Value Active "true" "false" ex) p.setproperty("datamodule.active", "false"); CACHE_FILE_PAT H ex) p.setproperty("cache_file_path","%oz_home%/cac he"); DM_CACHE_FILE _PATH Data Module ex) p.setproperty("dm_cache_file_path","%oz_home% /cache_dm/"); FORCS Co., LTD 7

8 OZ API Developer's Guide memorycacheval idtime (:) ex) p.setproperty("datamodule.memorycachevalidtime", "100"); diskcachevalidti me (:) ex) p.setproperty("datamodule.diskcachevalidtime","100"); FreeMemoryPerc entage ex) p.setproperty("datamodule.freememorypercentage", "20"); : ". -cachemngr.properties". Sample : CacheSample.java package sample; import oz.framework.api.cache; import org.apache.log4j.*; import oz.util.sortproperties; public class CacheSample { public static void main(string[] args) { BasicConfigurator.configure(); // OZServer Info. //* // Daemon String IP = " "; // IP int PORT = 8003; // TCP /*/ // Servlet String URL = "http://www.oz.com/oz/server"; //Servlet URL /**/ // User Info. String ID = "admin"; //default String PWD = "admin"; //default Cache cache = null; 8 FORCS Co., LTD

9 try { //* // Daemon cache = new Cache(IP, PORT, ID, PWD, false, false); /*/ // Servlet cache = new Cache(URL, ID, PWD, false, false); /**/ SortProperties p = new SortProperties(); /*/ // (setcacheconfiguration) p.setproperty("cache_file_path", "%OZ_HOME%/cache"); // p.setproperty("dm_cache_file_path", "%OZ_HOME%/cache_dm"); // DataModule p.setproperty("datamodule.active", "true"); // p.setproperty("datamodule.memorycachevalidtime", "1000"); // p.setproperty("datamodule.diskcachevalidtime", "1000"); // p.setproperty("datamodule.freememorypercentage", "21"); // cache.setcacheconfiguration(p); /*/ // (getcacheconfiguration) p = cache.getcacheconfigration(); /**/ p.list(system.out); catch(exception e) { e.printstacktrace(); FORCS Co., LTD 9

10 OZ API Developer's Guide Constructor Summary ConnectionPool(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) ConnectionPool(String url, String id, String pw, boolean bautologin, boolean useusl) Method Summary void addpool(connectionpoolinfo pool) void removepool(string pool) ConnectionPoolInfo[] getpoolinfolist() ConnectionPoolStatus[] getpoolstatuslist() ConnectionPoolInfo getpoolinfo(string alias) void save() Constructor Detail //Daemon - TCP Server public ConnectionPool(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) //Servlet - HTTP Server public ConnectionPool(String url, String id, String pw, boolean bautologin, boolean useusl) Argument url ip Servlet URL ex) String url = "http:// /oz/server"; Daemon IP ex) String ip = " "; 10 FORCS Co., LTD

11 port id pw bautologin useusl Daemon ex) int port = 8003; ex) String id = "admin"; ex) String pw = "admin"; ex) boolean bautologin = true; USL ex) boolean useusl = false; Method Detail addpool public void addpool(connectionpoolinfo pool) throws OZCPException ConnectionPool. ConnectionPool "ConnectionPoolInfo". Argument pool ConnectionPool ConnectionPoolInfo removepool public void removepool(string pool) throws OZCPException ConnectionPool. Argument pool ConnectionPool getpoolinfolist public ConnectionPoolInfo[] getpoolinfolist() throws OZCPException ConnectionPool ConnectionPoolInfo. getpoolstatuslist public ConnectionPoolStatus[] getpoolstatuslist() throws OZCPException FORCS Co., LTD 11

12 OZ API Developer's Guide ConnectionPool. getpoolinfo public ConnectionPoolInfo getpoolinfo(string alias) throws OZCPException ConnectionPool ConnectionPoolInfo. Argument alias ConnectionPool save public void save() throws OZCPException ConnectionPool. Class ConnectionPoolInfo(oz.framework.db.ConnectionPoolInfo.class). ConnectionPoolStatus(oz.framework.db.ConnectionPoolStatus.class) ConnectionPool. - public final static int OK = 1; ConnectionPool.. Status OK ConnectionPool DRIVER_ERROR ConnectionPool JDBC CONNECTION_ERROR ConnectionPool DBMS public final static int DRIVER_ERROR = -1; public final static int CONNECTION_ERROR = -2; 12 FORCS Co., LTD

13 Sample : ConnectionSample.java package sample; import oz.framework.api.connectionpool; import oz.framework.db.connectionpoolinfo; import oz.framework.db.connectionpoolstatus; import org.apache.log4j.*; public class ConnectionPoolSample { public static void main(string[] args) { BasicConfigurator.configure(); // OZServer Info. //* // Daemon String IP = " "; // IP int PORT = 8003; // TCP /*/ // Servlet String URL = "http://www.oz.com/oz/server"; //Servlet URL /**/ // User Info. String ID = "admin";//default String PWD = "admin";//default ConnectionPool conpool = null; try { //* // Daemon conpool = new ConnectionPool(IP, PORT, ID, PWD, false, false); /*/ // Servlet conpool = new ConnectionPool(URL, ID, PWD, false, false); /**/ // (addpool) ConnectionPoolInfo poolinfo = new ConnectionPoolInfo(); poolinfo.setalias("forcs"); // poolinfo.setvendor("mssql"); // ( MSSQL) poolinfo.setserveraddress(" ");// IP poolinfo.setportno(1433); // poolinfo.setdbname("db"); // poolinfo.setuser("admin"); // poolinfo.setpassword("admin"); // poolinfo.setmaxconns(20); // poolinfo.setinitconns(1); // FORCS Co., LTD 13

14 OZ API Developer's Guide poolinfo.settimeout(5); conpool.addpool(poolinfo); // // (getpoolinfo) poolinfo = conpool.getpoolinfo("forcs"); poolinfo._print(system.out); // (removepool) String conpoolname = "forcs"; // conpool.removepool(conpoolname); // ConnectionPoolInfo (getpoolinfolist) ConnectionPoolInfo[] poolinfolist = conpool.getpoolinfolist(); for (int i = 0; i < poolinfolist.length; i++) { poolinfolist[i]._print(system.out); // ConnectionPoolStatus (getpoolstatuslist) ConnectionPoolStatus[] poolstatuslist=conpool.getpoolstatuslist(); for (int i = 0; i < poolstatuslist.length; i++) { ConnectionPoolStatus cps = poolstatuslist[i]; // System.out.println(i); System.out.println("StatusString=" + cps.getstatusstring()); // System.out.println("free=" + new Integer(cps.getFreeConnectionCount())); // System.out.println("checkedout=" + new Integer(cps.getCheckedOutConnectionCount())); System.out.println(); // (save) conpool.save(); catch(exception e) { e.printstacktrace(); 14 FORCS Co., LTD

15 Constructor Summary DataBind(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) DataBind(String url, String id, String pw, boolean bautologin, boolean useusl) Method Summary void setdatabindconfigration(sortproperties config) SortProperties getdatabindconfigration() Constructor Detail //Daemon - TCP Server public DataBind(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) //Servlet - HTTP Server public DataBind(String url, String id, String pw, boolean bautologin, boolean useusl) Argument url ip port id Servlet URL ex) String url = "http:// /oz/server"; Daemon IP ex) String ip = " "; Daemon ex) int port = 8003; ex) String id = "admin"; FORCS Co., LTD 15

16 OZ API Developer's Guide pw bautologin useusl ex) String pw = "admin"; ex) boolean bautologin = true; USL ex) boolean useusl = false; Method Detail setdatabindconfigration public void setdatabindconfigration(sortproperties config) throws OZCPException DataBind, "databind.properties". Argument config DataBind getdatabindconfigration public SortProperties getdatabindconfigration() throws OZCPException DataBind, "databind.properties". - Key setdatabindconfigration() getdatabindconfigration() key. Key Value ConcurrentFetch Size FetchType "Concurrent" Stream. byte, 4096, 256. :,. 16 FORCS Co., LTD

17 ConcurrentFirstR ow FetchType "Concurrent"., 0. : 0. Sample : DataBindSample.java package sample; import oz.framework.api.databind; import org.apache.log4j.*; import oz.util.sortproperties; public class DataBindSample { public static void main(string[] args) { BasicConfigurator.configure(); // OZServer Info. String IP = " "; // IP int PORT = 8003; // TCP // User Info. String ID = "admin"; //default String PWD = "admin"; //default DataBind databind = null; try { databind = new DataBind(IP, PORT, ID, PWD, false, false); SortProperties p = new SortProperties(); // (setdatabindconfiguration) //Stream p.setproperty("concurrentfetchsize", "4096"); // row p.setproperty("concurrentfirstrow", "0"); databind.setdatabindconfiguration(p); // (getdatabindconfiguration) p = databind.getdatabindconfigration(); java.util.vector vec = p.propertynames(); for(int i=0; i<vec.size(); i++) { String name = (String)vec.elementAt(i); System.out.println(name + "=" + p.getproperty(name)); FORCS Co., LTD 17

18 OZ API Developer's Guide catch (Exception e) { e.printstacktrace(); 18 FORCS Co., LTD

19 Constructor Summary Log(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) Log(String url, String id, String pw, boolean bautologin, boolean useusl) Method Summary String getconfiguration() byte[] downloadlog() void downloadlog(string filename) void setconfiguration(string logs) void setpriority(string p) Constructor Detail //Daemon - TCP Server public Log(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) //Servlet - HTTP Server public Log(String url, String id, String pw, boolean bautologin, boolean useusl) Argument url ip port Servlet URL ex) String url = "http:// /oz/server"; Daemon IP ex) String ip = " "; Daemon ex) int port = 8003; FORCS Co., LTD 19

20 OZ API Developer's Guide id pw bautologin useusl ex) String id = "admin"; ex) String pw = "admin"; ex) boolean bautologin = true; USL ex) boolean useusl = false; Method Detail getconfigure public String getconfigure() throws OZCPException. downloadlog public byte[] downloadlog() throws OZCPException. downloadlog public void downloadlog(string filename) throws OZCPException, IOException. Argument filename setconfigure public void setconfigure(string logs) throws OZCPException. Argument logs, "key=value" ex) String logs="priority=debug" ex) String logs="console.layout=%r[%t]%p%c{1%x-%m%n 20 FORCS Co., LTD

21 setpriority public void setpriority(string p) throws OZCPException.(INFO, DEBUG, ERROR) Argument p Sample : LogSample.java package sample; import oz.framework.api.log; import org.apache.log4j.*; public class LogSample { public static void main(string[] args) { BasicConfigurator.configure(); // OZServer Info. // Daemon String IP = " "; // IP int PORT = 8003; // TCP // Servlet String URL = "http://www.oz.com/oz/server"; //Servlet URL // User Info. String ID = "admin"; //default String PWD = "admin"; //default Log log = null; try { // Daemon log = new Log(IP, PORT, ID, PWD, false, false); // Servlet log = new Log(URL, ID, PWD, false, false); // (getconfigure) String conf = null; conf = log.getconfigure(); System.out.println(conf); // (setconfigure, setproirity) String logs = "Priority=INFO"; //log.setconfigure(logs); log.setpriority("debug"); // (downloadlog) byte b[] = log.downloadlog(); String filename = "server.log"; //. log.downloadlog(filename); FORCS Co., LTD 21

22 OZ API Developer's Guide catch(exception e) { e.printstacktrace(); 22 FORCS Co., LTD

23 Constructor Summary Module(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) Module(String url, String id, String pw, boolean bautologin, boolean useusl) Method Summary InputString getozd(string item, String category, String[] urls) InputStream getozd(string item, String category, Hashtable formparam, Hashtable odiparam, boolean memoallowed, String password, String id, String pw, HttpServletRequest request) InputStream getozu(string item, String category, String[] urls) void addodiparameter(string odiname, String key, String value) void addodiparameter(string odiname, String item, String category, Hashtable paramhash) void addparameter(string key, String value) void addapplicationparameter(string key, String value) void saveozd(string filename, String item, String category, String[] urls) void saveozu(string filename, String item, String category, String[] urls) Constructor Detail FORCS Co., LTD 23

24 OZ API Developer's Guide //Daemon - TCP Server public Module(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) //Servlet - HTTP Server public Module(String url, String id, String pw, boolean bautologin, boolean useusl) Argument url ip port id pw bautologin useusl Servlet URL ex) String url = "http:// /oz/server"; Daemon IP ex) String ip = " "; Daemon ex) int port = 8003; ex) String id = "admin"; ex) String pw = "admin"; ex) boolean bautologin = true; USL ex) boolean useusl = false; Method Detail getozd Argument public InputStream getozd(string item, String category, String[] urls) throws OZCPException SDM OZD. OZD urls. : API DM_TYPE="Momory", FetchType="Batch".. item ( OZR ) category 24 FORCS Co., LTD

25 urls OZD URL getozd protected final InputStream getozd(string item, String category, Hashtable formparam, Hashtable odiparam, boolean memoallowed, String password, String id, String pwd, HttpServletRequest request) throws Exception OZD, OZD.,. : "RequestOZDSample.java". : API DM_TYPE="MEMORY", FetchType="BATCH".. Argument item category formparam odiparam memoallowed password id pw request ( OZR ) : Hashtable (String), (String ). ODI : ODI Hashtable ODI(String), (Hashtable), Hashtable (String), (String). OZD OZD HttpServletRequest getozu public InputStream getozu(string item, String category, String[] urls) throws OZCPException FORCS Co., LTD 25

26 OZ API Developer's Guide SDM OZU. : API DM_TYPE="Momory", FetchType="Batch".. : "FetchUnit" "DM_PER_DATAMODULE". Argument item category urls ( OZA ) OZU URL addodiparameter public void addodiparameter(string odiname, String key, String value) SDM ODI ODI. ODI ODI. odiname ODI Argument key value ODI ODI addodiparameter public void addodiparameter(string odiname, String item, String category, Hashtable paramhash) throws IllegalArgumentException SDM ODI ODI. ODI ODI. ODI SDM SDM. Argument odiname item category paramhash ODI ODI ODI Key, Value Hashtable : OZU paramhash 26 FORCS Co., LTD

27 OZU addodiparameter() paramhash null addapplicationparameter(key,value) ODI. ex) addapplicationparameter module.addapplicationparameter("odi.odinames", "sample"); module.addapplicationparameter("odi.sample.pcount", "1"); module.addapplicationparameter("odi.sample.args1", "deptid=501"); addparameter public void addparameter(string key, String value) SDM.. Argument key value addapplicationparameter Argument public void addapplicationparameter(string key, String value) SDM. ODI ODI ODI. key ODI value ODI saveozd public void saveozd(string filename, String item, String category, String[] urls) throws OZCPException OZD. : API DM_TYPE="Momory", FetchType="Batch".. Argument filename item category Urls OZD (.ozr) (.ozr) OZD URL FORCS Co., LTD 27

28 OZ API Developer's Guide saveozu public void saveozu(string filename, String item, String category, String[] urls) throws OZCPException OZU. : API DM_TYPE="Momory", FetchType="Batch".. : "FetchUnit" "DM_PER_DATAMODULE". Argument filename item category Urls OZU (.oza) (.oza) OZU URL Sample : ModuleSample.java package sample; import java.io.*; import oz.framework.api.module; import org.apache.log4j.*; public class ModuleSample { public static void main(string[] args) { BasicConfigurator.configure(); // OZServer Info. //* // Daemon String IP = " "; // IP int PORT = 8003; // TCP /*/ // Servlet String URL = "http://www.oz.com/oz/server"; /**/ // User Info. String ID = "admin"; //default String PWD = "admin"; //default Module module = null; InputStream stream = null; try { 28 FORCS Co., LTD

29 1"); 2"); //* // Daemon module = new Module(IP, PORT, ID, PWD, false, false); /*/ // Servlet module = new Module(URL, ID, PWD, false, false); /**/ //module.addodiparameter(" 100 ", "rowcount", "40000"); // module.addparameter("server", " "); // module.addparameter("port", "8003"); // module.addparameter("reportname", "// 100.ozr"); // ozd //stream = module.getozd(" 100.ozr", "/"); //FileOutputStream out = new FileOutputStream("D:/TEST_OZD.ozd"); // saveozd(file name, item name, category name) //module.saveozd("d:/test_ozd.ozd", " 100.ozr", "/" ); //out.flush(); //out.close(); // // OZD // set form parameters module.addparameter("form_param1", "COCO 1"); module.addparameter("form_param2", "COCO 2"); // set odi parameters module.addodiparameter("ozp_param", "ODI_PARAM1", " ODI module.addodiparameter("ozp_param", "ODI_PARAM2", " ODI module.addodiparameter("ozp_db", "condition", "KIA"); String[] urls = { "http:// /img/ban_center.gif", "http:// /img/img_interview.gif", "ozp://img/netiq.gif", // ozp:// image "ozp://img/credos.gif", // ozp:// image - table "ozp://img/enterprise.gif", // ozp:// image - table "ozp://img/sephia.gif" // ozp:// image - table ; module.setpassword("1234"); module.setmemoallowed(true); module.saveozd("d:/ozp_test01.ozd", "OZP_TEST.ozr", "/", urls); catch(exception e) { e.printstacktrace(); FORCS Co., LTD 29

30 OZ API Developer's Guide Sample : RequestOZDSample.java import javax.servlet.http.httpservletrequest; import javax.servlet.http.httpservletresponse; import javax.servlet.servletconfig; import oz.server.ozservlet; import javax.servlet.servletexception; import java.io.*; import java.util.*; import oz.framework.cp.io.ozdataoutputstream; public class RequestOZDSample extends OZServlet { private static final int PROTOCOL_VER = 2005; private static final String _ROOT_PATH = "D:/"; private byte[] _buf = new byte[1024]; public void init(servletconfig config) throws ServletException { super.init(config); public void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { dopost(request, response); public void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { try { System.out.println("Start to get OZD"); long _JOB_ID = System.currentTimeMillis(); String tempozdfile = _ROOT_PATH + "sample" + _JOB_ID + ".ozd"; String tempwmfile = _ROOT_PATH + "sample" + _JOB_ID + ".mtx"; // Make OZD makeozd(tempozdfile, request); catch(exception e) { ByteArrayOutputStream bout = new ByteArrayOutputStream(); e.printstacktrace(new PrintStream(bout)); bout.flush(); byte[] b = bout.tobytearray(); String error = new String(bout.toByteArray()); bout.close(); System.out.println(error); PrintWriter writer = response.getwriter(); 30 FORCS Co., LTD

31 writer.println("requestozdsample : Error"); writer.println(); writer.println(error); writer.flush(); private void writefile(string filename, OZDataOutputStream out) throws IOException { BufferedInputStream bin = null; try { ByteArrayOutputStream bout = new ByteArrayOutputStream(); int len; bin = new BufferedInputStream(new FileInputStream(filename)); while((len = bin.read(_buf)) >= 0) { bout.write(_buf, 0, len); bout.flush(); byte[] buf = bout.tobytearray(); bout.close(); out.writeint(buf.length); out.write(buf,0,buf.length); finally { if(bin!= null) { try { bin.close(); catch(exception ex) { private void makeozd(string filename, HttpServletRequest request) throws Exception { InputStream stream = null; try { // Info. String _ITEM = "parameter_test.ozr"; String _CATEGORY = "/"; boolean _MEMOALLOW = true; String _PASSWORD = "1234"; String _UID = "admin"; String _PWD = "admin"; FORCS Co., LTD 31

32 OZ API Developer's Guide //Form parameter Hashtable _FORM_PARAM = new Hashtable(); _FORM_PARAM.put("formparam1", "FORM 1"); _FORM_PARAM.put("formparam2", "FORM 2"); //ODI parameter Hashtable _ODI_PARAM = new Hashtable(); Hashtable _odi_param = new Hashtable(); _odi_param.put("odiparam1", "ODI 1"); _odi_param.put("odiparam2", "ODI 2"); _ODI_PARAM.put("parameter_test", _odi_param); // call make ozd stream = getozd(_item, _CATEGORY, _FORM_PARAM, _ODI_PARAM, _MEMOALLOW, _PASSWORD, _UID, _PWD, request); FileOutputStream out = new FileOutputStream(filename); copy(stream, out); out.flush(); out.close(); catch(exception e) { e.printstacktrace(); throw e; finally { if(stream!= null) { try { stream.close(); catch(exception e) { // Util method public static int copy(inputstream is, OutputStream os) throws IOException { byte[] buf = new byte[1024]; int rt = 0; int len; while((len = is.read(buf)) >= 0) { os.write(buf, 0, len); rt += len; return rt; 32 FORCS Co., LTD

33 Sample : ModuleOZUSample.java package sample; import java.io.*; import oz.framework.api.module; import org.apache.log4j.*; import java.util.hashtable; public class ModuleOZUSample{ public static void main(string[] args){ BasicConfigurator.configure(); // OZServer Info. String IP = " "; // IP int PORT = 8003; // TCP // User Info. String ID = "admin"; //default String PWD = "admin"; //default Module module = null; InputStream stream = null; try{ module = new Module(IP, PORT, ID, PWD, false, /*usl*/ false); //ozu module.addapplicationparameter("odi.fetchunit", "DM_PER_DATAMODULE"); module.addapplicationparameter("odi.odinames", "sample"); module.addapplicationparameter("odi.sample.pcount", "1"); module.addapplicationparameter("odi.sample.args1", "deptid=501"); Hashtable hash = new Hashtable(); hash.put("deptid", "501"); String[] urls = { "http://www.anykiki.com/custom/casting//dana/.gif"; // paramhash NULL addapplication Parameter //. module.addodiparameter("sample", "sample.odi", "/sample", null); module.addodiparameter("sample", "sample.odi", "/sample", hash); //ozu, oza,, URL module.saveozu("d:/ozu.ozu", "sample.oza", "/sample", urls); catch(exception e){ e.printstacktrace(); FORCS Co., LTD 33

34 OZ API Developer's Guide Constructor Summary Monitor(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) Monitor (String url, String id, String pw, boolean bautologin, boolean useusl) Method Summary Versions getversions() MemoryStatus getmemoryinfo() byte[] downloadmonitorlog() void downloadmonitorlog(string filename) Constructor Detail //Daemon - TCP Server public Monitor(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) //Servlet - HTTP Server public Monitor(String url, String id, String pw, boolean bautologin, boolean useusl) Argument url ip port Servlet URL ex) String url = "http:// /oz/server"; Daemon IP ex) String ip = " "; Daemon ex) int port = 8003; 34 FORCS Co., LTD

35 id pw bautologin useusl ex) String id = "admin"; ex) String pw = "admin"; ex) boolean bautologin = true; USL ex) boolean useusl = false; Method Detail getversions public Versions getversions() throws OZCPException. getmemoryinfo public MemoryStatus getmemoryinfo() throws OZCPException (,, ). downloadmonitorlog rototype public byte[] downloadmonitorlog() throws OZCPException. downloadmonitorlog(string filename) public void downloadmonitorlog(string filename) throws OZCPException, IOException filename. FORCS Co., LTD 35

36 OZ API Developer's Guide Class MemoryStatus(oz.server.monitor.MemoryStatus) Server System. Versions(oz.server.monitor.Versions) Server Server System. - public String osname : Server OS public String osversion : Server OS public String javavendor : Server JVM public String javaversion : Server JVM Version public String OZServerVersion : public String CPRelease : OZ Common Protocol public int CPProtocol : OZ Common Protocol public String DMRelease : OZ Data Module public int DMStreaming : OZ Data Module Streaming Sample : MonitorSample.java package sample; import oz.framework.api.monitor; import oz.server.monitor.versions; import oz.server.monitor.memorystatus; import org.apache.log4j.*; public class MonitorSample { public static void main(string[] args) { BasicConfigurator.configure(); // OZServer Info. //* // Daemon String IP = " "; // IP int PORT = 8003; // TCP /*/ 36 FORCS Co., LTD

37 // Servlet String URL = "http://www.oz.com/oz/server"; //Servlet URL /**/ // User Info. String ID = "admin"; //default String PWD = "admin"; //default Monitor monitor = null; try { //* // Daemon monitor = new Monitor(IP, PORT, ID, PWD, false, false); /*/ // Servlet monitor = new Monitor(URL, ID, PWD, false, false); /**/ // (getserverinformation) Versions v = monitor.getversions(); v._printout(); // (getserverstatus) MemoryStatus ms = monitor.getmemoryinfo(); // = - long usedmemory = ms.gettotalmemory() - ms.getfreemememoy(); // System.out.println("Total Memory="+ms.getTotalMemory()); System.out.println("Used Memory="+usedMemory); System.out.println("Free Memory="+ms.getFreeMememoy()); System.out.println(""); //. byte [] logbytes = monitor.downloadmonitorlog(); //. String logfilename = "monitor.log"; monitor.downloadmonitorlog(logfilename); catch(exception e) { e.printstacktrace(); FORCS Co., LTD 37

38 OZ API Developer's Guide Constructor Summary Repository(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) Repository(String url, String id, String pw, boolean bautologin, boolean useusl) Method Summary // Configuration public void setrepositoryconfig(sortproperties prop) public SortProperties getrepositoryconfig() // User public int createuser(string username, String pwd, int gid, String description) public void deleteuser(int uid) public void updateusername(int uid, String username) public String getusernamebyid(int uid) // UserLogin public void disableuserlogin(string username) public void updatelogindefault(int logindval) public void enableuserlogin(string username) public void userlogout(int uid) public boolean isuserlogin(int uid) public boolean logintoserver() // UserPwd public boolean checkuserpwd(int uid, String pwd) 38 FORCS Co., LTD

39 public void updateuserpwd(int uid, String pwd) // UserDesc public void updateuserdescription(int uid, String description) public String getuserdescription(int uid) // UserID public int getgroupidofuser(int uid) public int getuseridbyname(string username) public void updategroupidofuser(int gid, int uid) // UserList public OZRepositoryUser[] getuserlist() public OZRepositoryUser[] getuserlistingroup(int gid) public OZRepositoryUser[] getuserlistauthtoitem(int itemid, byte perm) public OZRepositoryUser[] getuserlistauthtocategory(int categoryid, byte perm) // Group public int creategroup(string groupname, int uppergid) public void deletegroup(int gid) public void updateuppergroupid(int gid, int uppergid) public void updategroupname(int groupid, String groupname) // GroupAdmin public void updateusergroupadmin(int uid, int gid) public boolean isusergroupadmin(int uid, int gid) // GroupList public OZRepositoryGroup[] getgrouplistingroup(int gid) public OZRepositoryGroup getgroupinfo(int gid) public OZRepositoryGroup[] getgrouplistauthtoitem(int itemid, byte perm) public OZRepositoryGroup[] getgrouplistauthtocategory(int categoryid, byte perm) FORCS Co., LTD 39

40 OZ API Developer's Guide // Item public int createitem(string itemname, int itemtype, String itemdescription, int cid, InputStream itemin) public int createitem(string itemname, int itemtype, String itemdescription, String categoryname, InputStream itemin) public int getitemid(string itemname, int itemtype, int cid) public int getitemid(string itemname, int itemtype, String cname) public void deleteitem(int itemid) public InputStream getitem(int itemid) public void updateitemname(int itemid, String itemname) public InputStream getdirectitem(string itemname, int itemtype, String categoryname) public InputStream getdirectitem(string itemname, int itemtype, String categoryname, boolean compresseditem) public void updateitem(int itemid, InputStream input) public void updatedirectitem(string itemname, int itemtype, String categoryname, InputStream input) public boolean hasiteminrepository(string itemname, int itemtype, String categoryname) // InfoByItem public int getcategoryidofitem(int itemid) public void updatecategoryidofitem(int cid, int itemid) // ItemList public OZRepositoryItem[] getitemlist() public OZRepositoryItem getiteminfo(int itemid) public OZRepositoryItem[] getitemlistincategory(int cid) public OZRepositoryItem[] getitemlistincategory(string cname) public OZRepositoryItem[] getitemlistincategory(int cid, int uid, byte perm) public OZRepositoryItem[] getitemlistincategory(string categoryname, int uid, byte perm) public OZRepositoryItem[] getitemlistincategoryauthgroup(int cid, int gid, byte perm) 40 FORCS Co., LTD

41 public OZRepositoryItem[] getitemlistincategoryauthgroup(string categoryname, int gid, byte perm) public OZRepositoryItem[] getitemlistauthtouser(int uid, byte perm) public OZRepositoryItem[] getitemlistauthtogroup(int gid, byte perm) // Category public int createcategory(string categoryname, int uppercid) public int createcategory(string categorypath) public void deletecategory(int cid) public int getcategoryid(string fullpath) public void updateuppercategoryid(int cid, int uppercid) public void updatecategoryname(int cid, String categoryname) public int getitemcountincategory(int cid) public OZRepositoryCategory[] getcategorylistincategory(int cid) public OZRepositoryCategory[] getcategorylistincategory(int cid, int uid, byte perm) public OZRepositoryCategory[] getcategorylistincategoryauthgroup(int cid, int gid, byte perm) public OZRepositoryCategory getcategoryinfo(int cid) public OZRepositoryCategory[] getcategorylistauthtouser(int uid, int cid, byte perm) public OZRepositoryCategory[] getcategorylistauthtogroup(int gid, int cid, byte perm) // CheckInOut public void checkoutitem(int itemid, int uid, String checkoutfolder) public void undocheckoutitem(int itemid, int uid) public void checkinitem(boolean keepchkout, int itemid, int uid, InputStream itemin) public boolean ischeckoutuser(int itemid, int uid) // History public void rollbackitem(int itemid, int itemversion) public InputStream getspecifiedversionitem(int itemid, int itemversion) public OZRepositoryHistory[] gethistoryitemlist(int itemid) FORCS Co., LTD 41

42 OZ API Developer's Guide public void clearhistoryitem(int itemid, int itemversion) Constructor Detail //Daemon - TCP Server public Repository(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) //Servlet - HTTP Server public Repository(String url, String id, String pw, boolean bautologin, boolean useusl) Argument url ip port id pw bautologin useusl Servlet URL ex) String url = "http:// /oz/server"; Daemon IP ex) String ip = " "; Daemon ex) int port = 8003; ex) String id = "admin"; ex) String pw = "admin"; ex) boolean bautologin = true; USL ex) boolean useusl = false; Method Detail // Configuration setrepositoryconfig public void setrepositoryconfig(sortproperties prop) throws OZCPException 42 FORCS Co., LTD

43 . "repository.properties", Key. Argument prop getrepositoryconfig public SortProperties getrepositoryconfig() throws OZCPException. "repository.properties", Key. - Key setrepositoryconfig() getrepositoryconfig() key. Key Value REPOSITORY_TYPE REPOSITORY_FILE_P ATH REPOSITORY_ITEM_ NUMBER_PER_DIREC TORY REPOSITORY_HISTO RY_ITEM_VALID_DA YS REPOSITORY_ADD_C OMPRESSED_ITEM "RDB" "BUILTIN" "true" "false" ex) prop.setproperty("repository_type","rdb"); ex) prop.setproperty("repository_file_path","c:/temp_ repository"); ( : "500") ex) prop.setproperty("repository_item_number_per_ DIRECTORY","100"); ex) prop.setproperty("repository_history_item_vali D_DAYS","20"); ex) prop.setproperty("repository_add_compressed_i TEM","false"); FORCS Co., LTD 43

44 OZ API Developer's Guide // User createuser public int createuser(string username, String pwd, int gid, String description) throws OZCPException, ID. Argument username pwd gid description ID deleteuser public void deleteuser(int uid) throws OZCPException ID. Argument uid ID updateusername public void updateusername(int uid, String username) throws OZCPException ID. Argument uid username ID getusernamebyid public String getusernamebyid(int uid) throws OZCPException ID. Argument uid ID // UserLogin disableuserlogin public void disableuserlogin(string username) throws OZCPException. Argument username 44 FORCS Co., LTD

45 updatelogindefault public void updatelogindefault(int logindval) throws OZCPException ID. Argument logindval ID enableuserlogin public void enableuserlogin(string username) throws OZCPException. Argument username userlogout public void userlogout(int uid) throws OZCPException ID,. Argument uid ID isuserlogin public boolean isuserlogin(int uid) throws OZCPException ID,. Argument uid ID logintoserver public boolean logintoserver() throws OZCPException. // UserPwd checkuserpwd public boolean checkuserpwd(int uid, String pwd) throws OZCPException. Argument uid pwd ID FORCS Co., LTD 45

46 OZ API Developer's Guide updateuserpwd public void updateuserpwd(int uid, String pwd) throws OZCPException ID. Argument uid pwd ID // UserDesc updateuserdescription public void updateuserdescription(int uid, String description) throws OZCPException ID. Argument uid description ID getuserdescription public String getuserdescription(int uid) throws OZCPException ID. Argument uid ID // UserID getgroupidofuser public int getgroupidofuser(int uid) throws OZCPException ID ID. Argument uid ID ID getuseridbyname public int getuseridbyname(string username) throws OZCPException ID. Argument username ID 46 FORCS Co., LTD

47 updategroupidofuser public void updategroupidofuser(int gid, int uid) throws OZCPException ID. Argument gid uid ID ID ID // UserList getuserlist public OZRepositoryUser[] getuserlist() throws OZCPException. getuserlistingroup public OZRepositoryUser[] getuserlistingroup(int gid) throws OZCPException ID. Argument gid ID getuserlistauthtoitem public OZRepositoryUser[] getuserlistauthtoitem(int itemid, byte perm) throws OZCPException ID perm. Argument itemid perm ID getuserlistauthtocategory public OZRepositoryUser[] getuserlistauthtocategory(int categoryid, byte perm) throws OZCPException ID perm. Argument categoryid perm ID FORCS Co., LTD 47

48 OZ API Developer's Guide // Group creategroup public int creategroup(string groupname, int uppergid) throws OZCPException, ID. Argument groupname uppergid ID deletegroup public void deletegroup(int gid) throws OZCPException ID. Argument gid ID updategroupname public void updategroupname(int gid, String groupname) throws OZCPException ID. Argument gid groupname ID // GroupAdmin updateusergroupadmin public void updateusergroupadmin(int uid, int gid) throws OZCPException ID. Argument uid gid ID ID isusergroupadmin public boolean isusergroupadmin(int uid, int gid) throws OZCPException ID. Argument uid ID 48 FORCS Co., LTD

49 gid ID // GroupList getgrouplistingroup public OZRepositoryGroup[] getgrouplistingroup(int gid) throws OZCPException ID. Argument gid ID getgroupinfo public OZRepositoryGroup getgroupinfo(int gid) throws OZCPException ID. Argument gid ID getgrouplistauthtoitem Argument public OZRepositoryGroup[] getgrouplistauthtoitem(int itemid, byte perm) throws OZCPException ID perm. itemid ID perm getgrouplistauthtocategory Argument public OZRepositoryGroup[] getgrouplistauthtocategory(int categoryid, byte perm) throws OZCPException ID perm. categoryid ID perm FORCS Co., LTD 49

50 OZ API Developer's Guide // Item createitem public int createitem(string itemname, int itemtype, String itemdescription, int cid, InputStream itemin) throws OZCPException public int createitem(string itemname, int itemtype, String itemdescription, String categoryname, InputStream itemin) throws OZCPException, ID. Argument itemname itemtype itemdescription cid itemin categoryname ID getitemid public int getitemid(string itemname, int itemtype, int cid) throws OZCPException public int getitemid(string itemname, int itemtype, String cname) throws OZCPException ID. Argument itemname itemtype cid cname ID deleteitem public void deleteitem(int itemid) throws OZCPException. Argument itemid ID 50 FORCS Co., LTD

51 getitem public InputStream getitem(int itemid) throws OZCPException ID. Argument itemid ID updateitemname public void updateitemname(int itemid, String itemname) throws OZCPException ID. Argument itemid itemname ID getdirectitem public InputStream getdirectitem(string itemname, int itemtype, String categoryname) throws OZCPException public InputStream getdirectitem(string itemname, int itemtype, String categoryname, boolean compresseditem) throws OZCPException. Argument itemname itemtype categoryname compresseditem updateitem public void updateitem(int itemid, InputStream input) throws OZCPException ID. Argument itemid input ID updatedirectitem public void updatedirectitem(string itemname, int itemtype, String categoryname, InputStream input) throws OZCPException FORCS Co., LTD 51

52 OZ API Developer's Guide ID. Argument itemname itemtype categoryname input hasiteminrepository public boolean hasiteminrepository(string itemname, int itemtype, String categoryname) throws OZCPException. Argument itemname itemtype categoryname // InfoByItem getcategoryidofitem public int getcategoryidofitem(int itemid) throws OZCPException ID ID. Argument itemid ID updatecategoryidofitem public void updatecategoryidofitem(int cid, int itemid) throws OZCPException ID. Argument cid itemid ID ID // ItemList getitemlist public OZRepositoryItem[] getitemlist() throws OZCPException. 52 FORCS Co., LTD

53 getiteminfo public OZRepositoryItem getiteminfo(int itemid) throws OZCPException ID. Argument itemid ID getitemlistincategory public OZRepositoryItem[] getitemlistincategory(int cid) throws OZCPException public OZRepositoryItem[] getitemlistincategory(string categoryfullpath) throws OZCPException public OZRepositoryItem[] getitemlistincategory(int cid, int uid, byte perm) throws OZCPException public OZRepositoryItem[] getitemlistincategory(string categoryfullpath, int uid, byte perm) throws OZCPException. Argument cid categoryfullpath uid perm ID ID getitemlistincategoryauthgroup public OZRepositoryItem[] getitemlistincategoryauthgroup(int cid, int gid, byte perm) throws OZCPException public OZRepositoryItem[] getitemlistincategoryauthgroup (String categoryfullpath, int gid, byte perm) throws OZCPException. Argument cid gid perm categoryfullpath ID ID FORCS Co., LTD 53

54 OZ API Developer's Guide getitemlistauthtouser public OZRepositoryItem[] getitemlistauthtouser(int uid, byte perm) throws OZCPException ID perm. Argument uid perm ID getitemlistauthtogroup public OZRepositoryItem[] getitemlistauthtogroup(int gid, byte perm) throws OZCPException ID perm. Argument gid perm ID // Category createcategory public int createcategory(string categoryname, int uppercid) throws OZCPException, ID. Argument categoryname uppercid ID createcategory public int createcategory(string categorypath) throws OZCPException, ID. Argument categorypath deletecategory public void deletecategory(int cid) throws OZCPException ID. 54 FORCS Co., LTD

55 Argument cid ID getcategoryid public int getcategoryid(string fullpath) throws OZCPException ID. Argument fullpath ID updateuppercategoryid public void updateuppercategoryid(int cid, int uppercid) throws OZCPException ID. Argument cid uppercid ID ID updatecategoryname public void updatecategoryname(int cid, String categoryname) throws OZCPException ID. Argument cid categoryname ID getitemcountincategory public int getitemcountincategory(int cid) throws OZCPException. Argument cid ID getcategorylistincategory public OZRepositoryCategory[] getcategorylistincategory(int cid) throws OZCPException public OZRepositoryCategory[] getcategorylistincategory(int cid, int uid, byte perm) throws OZCPException FORCS Co., LTD 55

56 OZ API Developer's Guide. Argument cid uid perm ID ID getcategoryinfo public OZRepositoryCategory getcategoryinfo(int cid) throws OZCPException. Argument cid ID getcategorylistauthtouser public OZRepositoryCategory[] getcategorylistauthtouser(int uid, int cid, byte perm) throws OZCPException ID perm. Argument uid cid perm ID ID getcategorylistauthtogroup public OZRepositoryCategory[] getcategorylistauthtogroup(int gid, int cid, byte perm) throws OZCPException ID perm. Argument gid cid perm ID ID // CheckInOut checkoutitem public void checkoutitem(int itemid, int uid, String checkoutfolder) throws OZCPException ID. 56 FORCS Co., LTD

57 Argument itemid uid checkoutfolder ID ID undocheckoutitem public void undocheckoutitem(int itemid, int uid) throws OZCPException ID. Argument itemid uid ID ID checkinitem public void checkinitem(boolean keepchkout, int itemid, int uid, InputStream itemin) throws OZCPException ID. Argument keepchkout itemid uid itemin ID ID ischeckoutuser public boolean ischeckoutuser(int itemid, int uid) throws OZCPException. Argument itemid uid ID ID // History getspecifiedversionitem public InputStream getspecifiedversionitem(int itemid, int itemversion) throws OZCPException ID. Argument itemid itemversion ID FORCS Co., LTD 57

58 OZ API Developer's Guide gethistoryitemlist public OZRepositoryHistory[] gethistoryitemlist(int itemid) throws OZCPException. Argument itemid ID clearhistoryitem public void clearhistoryitem(int itemid, int itemversion) throws OZCPException. Argument itemid itemversion ID rollbackitem public void rollbackitem(int itemid, int itemversion) throws OZCPException. Argument itemid itemversion ID Class OZRepositoryUser(oz.framework.repository.OZRepositoryUser),,,,. - getusername public String getusername(). getuserid public int getuserid() ID. 58 FORCS Co., LTD

59 getgrouplist public java.util.vector getgrouplist(). getdescription public String getdescription(). getpassword public String getpassword(). getpermission public byte getpermission(). 0 : None( ) 1 : View( ) 3 : Read( ) 7 : Write( ) getdirectpermission public byte getdirectpermission(). getindirectpermission public byte getindirectpermission(). getisloggedin public boolean getisloggedin(). getsessionid public int getsessionid() FORCS Co., LTD 59

60 OZ API Developer's Guide ID. getisloginenabled public boolean getisloginenabled(). OZRepositoryUser[](oz.framework.repository.OZRepositoryUser[]). OZRepositoryGroup(oz.framework.repository.OZRepositoryGroup),,,,. - getgroupname public String getgroupname(). getgroupid public int getgroupid() ID. getparentgroupid public int getparentgroupid() ID. getgroupadminlist public java.util.vector getgroupadminlist(). getdirectpermission public byte getdirectpermission(). 60 FORCS Co., LTD

61 getindirectpermission public byte getindirectpermission(). getpermission public byte getpermission(). getdescription public String getdescription(). getfullpath public String getfullpath(). OZRepositoryGroup[](oz.framework.repository.OZRepositoryGroup[]). OZRepositoryItem(oz.framework.repository.OZRepositoryItem),,,,. - getitemname public String getitemname(). getitemid public int getitemid() ID. getitemtype public int getitemtype() FORCS Co., LTD 61

62 OZ API Developer's Guide : ODI_FILE : OZR_FILE : SDM_FILE : USDM_FILE : OZD_FILE : UIMG_FILE getdescription public String getdescription(). getcheckoutuserid public int getcheckoutuserid() ID. getcheckoutusername public String getcheckoutusername(). getcheckoutfolder public String getcheckoutfolder(). getupdatetime public java.util.date getupdatetime(). getischeckedout public boolean getischeckedout(). getdirectpermission public byte getdirectpermission() 62 FORCS Co., LTD

63 . getindirectpermission public byte getindirectpermission(). getadminlist public java.util.vector getadminlist(). getcategorylist public java.util.vector getcategorylist(). OZRepositoryItem[](oz.framework.repository.OZRepositoryItem[]). OZRepositoryCategory(oz.framework.repository.OZRepositoryCategory). - getcategoryname public String getcategoryname(). getcategoryid public int getcategoryid() ID. getparentcategoryid public int getparentcategoryid() ID. FORCS Co., LTD 63

64 OZ API Developer's Guide getcategoryadminlist public java.util.vector getcategoryadminlist(). getdirectpermission public byte getdirectpermission(). getindirectpermission public byte getindirectpermission(). getpermission public byte getpermission(). getdescription public String getdescription(). getfullpath public String getfullpath(). OZRepositoryCategory[](oz.framework.repository.OZRepositoryCategory[] ). OZRepositoryHistory(oz.framework.repository.OZRepositoryHistory). - gethistoryitempath public String gethistoryitempath() 64 FORCS Co., LTD

65 . gethistoryitemversion public int gethistoryitemversion(). gethistorydate public String gethistorydate(). gethistorycheckinuser public String gethistorycheckinuser(). OZRepositoryHistory[](oz.framework.repository.OZRepositoryHistory[]). Sample : RepositorySample.java package sample; import oz.framework.api.repository; import oz.util.sortproperties; import oz.framework.repository.ozrepositoryitem; import oz.framework.repository.ozrepositoryuser; import oz.framework.repository.ozrepositoryhistory; import oz.framework.repository.ozrepositorygroup; import oz.framework.repository.ozrepositorycategory; import oz.framework.cp.ozcpexception; import oz.dm.hc.hcdatamodule; import oz.dm.dmconst; import java.io.*; import java.net.*; import org.apache.log4j.*; import java.io.ioexception; import java.util.*; FORCS Co., LTD 65

66 OZ API Developer's Guide public class RepositorySample { private static Repository repository = null; public static void main(string[] args) { BasicConfigurator.configure(); // OZServer Info. //* // Daemon String IP = " "; // IP int PORT = 8003; // TCP /*/ // Servlet String URL = "http://www.oz.com/oz/server"; //Servlet URL /**/ // User Info. String ID = "admin"; //default String PWD = "admin"; //default try { // Daemon repository = new Repository(IP, PORT, ID, PWD, false, false); /*/ // Servlet repository = new Repository(URL, ID, PWD, false, false); /**/ repositoryconfiguration(); usertest(); grouptest(); itemtest(); catch (Exception e) { e.printstacktrace(); private static void repositoryconfiguration() throws Exception { //Repository configuration. System.out.println("Repository.getRepositoryConfig()"); SortProperties props = repository.getrepositoryconfig(); props.list(system.out); //Repository Configuration SortProperties prop = new SortProperties(); prop.setproperty("repository_type", "RDB"); //RDB, FILESYSTEM, USER prop.setproperty("repository_file_path", "c:/temp_repository"); 66 FORCS Co., LTD

67 prop.setproperty("repository_item_number_per_directory", "100"); prop.setproperty("repository_history_item_valid_days", "20"); //repository.setrepositoryconfig(prop); private static void historytest(int itemid) throws Exception { final int itemversion = 0; // itemversion, itemid System.out.println("Repository.getSpecifiedVersionItem( int itemid, int itemversion)"); InputStream in = repository.getspecifiedversionitem( itemid, itemversion); download(repository.getspecifiedversionitem(itemid, itemversion), "getspecifiedversionitem" + repository.getiteminfo(itemid).getitemname()); // itemid System.out.println("Repository.getHistoryItemList(int itemid)"); OZRepositoryHistory[] historyinfolist = repository.gethistoryitemlist(itemid); if (historyinfolist!= null) { for (int i = 0; i < historyinfolist.length; i++) { OZRepositoryHistory historyinfo = historyinfolist[i]; System.out.println("HistoryDate : " + historyinfo.gethistorydate()); System.out.println("HistoryItemPath : " + historyinfo.gethistoryitempath()); System.out.println("HistoryItemVersion : " + historyinfo.gethistoryitemversion()); // Item version history. // history // System.out.println("Repository.clearHistoryItem( // int itemid, int itemversion)"); // repository.clearhistoryitem(itemid, itemversion); // Item itemversion. System.out.println("Repository.rollBackItem( int itemid, int itemversion)"); repository.rollbackitem(itemid, itemversion); private static void checkinouttest(int itemid) throws Exception{ final int uid = repository.getuseridbyname("admin"); String filename = "check in out test.txt"; FORCS Co., LTD 67

68 OZ API Developer's Guide createfile(filename); // User(uid) Item(itemid) checkout. System.out.println("Repository.checkOutItem( int itemid, int uid, String checkoutfolder)"); String checkoutfolder = ".."; repository.checkoutitem(itemid, uid, checkoutfolder); // uid itemid checkout, checkout cancel. // System.out.println("Repository.undoCheckOutItem( // int itemid, int uid)"); // repository.undocheckoutitem(itemid, uid); // item checkin. keepchkout check-in check-out System.out.println( "Repository.checkInItem(boolean keepchkout, int itemid, int uid, InputStream item_in)"); boolean keepchkout = false; FileInputStream in = new FileInputStream(fileName); repository.checkinitem(keepchkout, itemid, uid, in); in.close(); // uid user itemid check out. System.out.println("Repository.isCheckOutUser(int itemid, int uid)"); System.out.println("Does UID[" + uid + "] check out the item[" + itemid + "]? " + repository.ischeckoutuser(itemid, uid)); removefile(filename); private static void categorytest() throws Exception { final int uid = repository.getuseridbyname("admin"); int gid = repository.getgroupidofuser(uid); int cid, parent_cid; final byte authread = 0x02, authview = 0x01; String categoryname = null; OZRepositoryCategory[] categoryinfolist = null; //. System.out.println("Repository.createCategory(String categorypath)"); categoryname = "/Poultry"; cid = repository.createcategory(categoryname); System.out.println( "categorypath [categoryid] : " + categoryname + "[" + cid + "]"); // upper_cid category_name. System.out.println("Repository.createCategory(String category_name, int upper_cid)"); String childcategoryname = "Chickens"; parent_cid = cid; 68 FORCS Co., LTD

69 cid = repository.createcategory(childcategoryname, parent_cid); System.out.println("New new_category_name [new_categoryid] : " + childcategoryname + "[" + cid + "]"); // cid. System.out.println("Repository.deleteCategory(int cid)"); repository.deletecategory(cid); cid = parent_cid; // Full Path. System.out.println("Repository.getCategoryID(String fullpath)"); System.out.println("the full Path [" + categoryname + "]'s category ID : " + repository.getcategoryid(categoryname)); //. System.out.println("Repository.updateCategoryName(int cid, String categoryname)"); categoryname = "Fishes"; System.out.println("Before Update CategoryName : " + (repository.getcategoryinfo(cid)).getcategoryname()); repository.updatecategoryname(cid, categoryname); System.out.println("After Update CategoryName : " + (repository.getcategoryinfo(cid)).getcategoryname()); //. System.out.println("Repository.updateUpperCategoryId( int cid, int uppercid)"); int new_cid = repository.createcategory("/category Test"); System.out.println("Before Update UpperCategoryID : " + repository.getcategoryinfo(cid)).getparentcategoryid()); repository.updateuppercategoryid(cid, new_cid); System.out.println("After Update UpperCategoryID : " + (repository.getcategoryinfo(cid)).getparentcategoryid()); // cid. System.out.println("Repository.getItemCountInCategory(String cid)"); System.out.println("Item count in the category id [" + cid + "] : " + repository.getitemcountincategory(cid) + ""); // cid. System.out.println("Repository.getCategoryListInCategory(int cid) "); categoryinfolist = repository.getcategorylistincategory(0); showcategoryinfolist(categoryinfolist); // id //. System.out.println("Repository.getCategoryListInCategory( int categoryid, int userid, byte perm)"); categoryinfolist = repository.getcategorylistincategory(cid, uid, FORCS Co., LTD 69

70 OZ API Developer's Guide authview); showcategoryinfolist(categoryinfolist); // gid //. System.out.println( "Repository.getCategoryListInCategoryAuthGroup(int categoryid, int groupid, byte perm)"); categoryinfolist = repository.getcategorylistincategoryauthgroup(cid, gid, authview); showcategoryinfolist(categoryinfolist); // id. System.out.println("Repository.getCategoryInfo(int cid))"); showcategory(repository.getcategoryinfo(cid)); // //. System.out.println( "Repository.getCategoryListAuthToUser(int userid,int categoryid, byte perm) "); categoryinfolist = repository.getcategorylistauthtouser(uid, cid, authread); showcategoryinfolist(categoryinfolist); // // System.out.println("Repository.getCategoryListAuthToGroup(int groupid, int categoryid, byte perm) "); categoryinfolist = repository.getcategorylistauthtogroup(gid, cid, authread); showcategoryinfolist(categoryinfolist); repository.deletecategory(cid); repository.deletecategory(new_cid); private static void showcategoryinfolist( OZRepositoryCategory[] categorylist) { if(categorylist == null) return; for(int i=0; i < categorylist.length; i++) { showcategory(categorylist[i]); private static void showcategory(ozrepositorycategory c) { System.out.println("CategoryId : " + c.getcategoryid()); 70 FORCS Co., LTD

71 System.out.println("CategoryName : " + c.getcategoryname()); System.out.println("CategoryUpperId : " + c.getparentcategoryid()); System.out.println("Permission : " + c.getpermission()); private static void itemlisttest(int itemid) throws Exception { FileOutputStream fos = null; InputStream in = null; OZRepositoryItem[] iteminfolist = null; OZRepositoryUser[] userinfolist = null; OZRepositoryCategory[] categoryinfolist = null; OZRepositoryGroup[] grouplist = null; final String username = "admin"; String itemname = repository.getiteminfo(itemid).getitemname(); int uid = repository.getuseridbyname(username); int cid = repository.getcategoryidofitem(itemid); int gid = repository.getgroupidofitem(itemid); String categoryname = "/" + repository.getcategoryinfo(cid).getcategoryname(); final byte authrw = 0x07, authread = 0x02; byte[] buf = null; /****************************************************************************. //. System.out.println("Repository.getItemList()"); iteminfolist = repository.getitemlist(); showiteminfolist(iteminfolist); ****************************************************************************/ //. System.out.println("Repository.getItemInfo(int itemid)"); OZRepositoryItem iteminfo = repository.getiteminfo(itemid); showitem(iteminfo); // id. System.out.println("Repository.getItemListInCategory(int cid)"); iteminfolist = repository.getitemlistincategory(cid); showiteminfolist(iteminfolist); //. System.out.println( "Repository.getItemListInCategory(String categoryname)"); iteminfolist = repository.getitemlistincategory(categoryname); showiteminfolist(iteminfolist); // userid //. FORCS Co., LTD 71

72 OZ API Developer's Guide System.out.println( "Repository.getItemListInCategory(String cname,int userid, byte perm)"); iteminfolist = repository.getitemlistincategory(categoryname, uid, authrw); showiteminfolist(iteminfolist); // categoryid userid //. System.out.println("Repository.getItemListInCategory(int cid, int userid, byte perm)"); iteminfolist = repository.getitemlistincategory(cid, uid, authread); showiteminfolist(iteminfolist); // ID GroupID //. System.out.println("Repository.getItemListInCategoryAuthGroup(int cid, int groupid, byte perm)"); iteminfolist = repository.getitemlistincategoryauthgroup(cid, gid, authread); showiteminfolist(iteminfolist); // GroupID //. System.out.println("Repository.getItemListInCategoryAuthGroup + (String categoryname, int groupid, byte perm)"); iteminfolist = repository.getitemlistincategoryauthgroup(categoryname, gid, authread); showiteminfolist(iteminfolist); // uid. System.out.println("Repository.getItemListAuthToUser(int uid, byte perm)"); iteminfolist = repository.getitemlistauthtouser(uid, authread); showiteminfolist(iteminfolist); // gid. System.out.println("Repository.getItemListAuthToGroup(int gid, byte perm)"); iteminfolist = repository.getitemlistauthtogroup(gid, authread); showiteminfolist(iteminfolist); /**************************************************************************** //. System.out.println( "Repository.findItemByItemIndex(String[] itemindex, int[] oper)"); String[] itemindex = {"index test 1", "index test 2", "index test 3"; 72 FORCS Co., LTD

73 int[] oper = {2, 2; //1 => AND, 2 => OR iteminfolist = repository.finditembyitemindex(itemindex, oper); showiteminfolist(iteminfolist); ****************************************************************************/ private static void showiteminfolist(ozrepositoryitem[] iteminfolist) { if(iteminfolist == null) return; System.out.println( "[i]categoryname:itemname:itemid "); OZRepositoryItem item; for(int i=0; i < iteminfolist.length; i++) { item = iteminfolist[i]; Vector v = item.getcategorylist(); Iterator iter = v.iterator(); while(iter.hasnext()) { System.out.println("[" + i + "]" + iter.next() + ":" + item.getitemname() + ":" + item.getitemid()); private static void showitem(ozrepositoryitem item) { Vector v = item.getcategorylist(); Iterator iter = v.iterator(); while(iter.hasnext()) { System.out.println(" " + iter.next() + ":" + item.getitemname() + ":" + item.getitemid()); private static void infobyitemtest(int itemid) throws Exception { // System.out.println("Repository.getCategoryIdOfItem(int itemid)"); System.out.println("the ItemID[" + itemid + "]'s category ID : " + repository.getcategoryidofitem(itemid)); System.out.println( "Repository.updateCategoryIdOfItem(int cid, int itemid)"); int cid = repository.getcategoryidofitem(itemid); System.out.println("Before Update CategoryID : " + repository.getcategoryidofitem(itemid)); repository.updatecategoryidofitem(cid, itemid); System.out.println("After Update CategoryID : " + repository.getcategoryidofitem(itemid)); FORCS Co., LTD 73

74 OZ API Developer's Guide private static void itemtest() throws Exception { final String itemfilename = " 100.odi"; String itemname = itemfilename; String categoryname = "/Item Test"; String itemdescription = "Test of item creation"; final int itemtype = 10000; // OZItemInfo.ODI_FILE int cid = repository.createcategory(categoryname); int itemid; // return. System.out.println( "Repository.createItem(name, type, desc, cid, input_stream)"); itemid = repository.createitem(itemfilename, itemtype, itemdescription, cid, new FileInputStream(itemFileName)); System.out.println("item_name [iid] : " + itemname + "[" + itemid + "]"); // return // System.out.println( // "Repository.createItem(name, type, desc, category_name, // input_stream)"); // itemid = repository.createitem(itemfilename, itemtype, // itemdescription, categoryname, // new FileInputStream(itemFileName)); // System.out.println("item_name [iid] : " + itemfilename + "[" + // itemid + "]"); //,, // ID System.out.println("Repository.getItemId(String item_name, int item_type, Sring categoryname)"); itemid = repository.getitemid(itemname, itemtype, categoryname); System.out.println("Item ID [" + itemid + "]"); //,, id // ID System.out.println( "Repository.getItemId(String item_name, int item_type, int cid)"); itemid = repository.getitemid(itemname, itemtype, cid); System.out.println("Item ID [" + itemid + "]"); //. System.out.println("Repository.getItem(int itemid, int cid)"); System.out.println("Read the item from server and create a new file."); download(repository.getitem(itemid, cid),"getitem" + itemname); 74 FORCS Co., LTD

75 //. System.out.println("Repository.updateItemName(int itemid, String itemname) "); itemname = "Changed item name.odi"; System.out.println("Before Update ItemName : " + (repository.getiteminfo(itemid)).getitemname()); repository.updateitemname(itemid, itemname); System.out.println("After Update ItemName : " + (repository.getiteminfo(itemid)).getitemname()); //. System.out.println("Repository.getDirectItem + (String itemname, int itemtype, String categoryname, boolean compresseditem)"); System.out.println("Read the item from server and create a new file."); boolean compress = true; download(repository.getdirectitem(itemname, itemtype, categoryname, compress), "getdirectitem_compressed" + itemname); //. System.out.println("Repository.getDirectItem(String itemname, int itemtype, String categoryname)"); System.out.println("Read the item from server and create a new file."); download(repository.getdirectitem(itemname, itemtype, categoryname), "getdirectitem_uncompressed" + itemname); FileInputStream fis; /**************************************************************************** //. System.out.println("Repository.updateItem(int itemid, InputStream input)"); fis = new FileInputStream(itemFileName); repository.updateitem(itemid, fis); fis.close(); //. System.out.println( "Repository.updateDirectItem(String itemname, int itemtype, String categoryname, InputStream input)"); fis = new FileInputStream(itemFileName); repository.updatedirectitem(itemname, itemtype, categoryname, fis); fis.close(); ****************************************************************************/ // System.out.println("Repository.hasItemInRepository( String itemname, int itemtype, String categoryname)"); System.out.println("Does item[" + itemname + "] exist in category[" + FORCS Co., LTD 75

76 OZ API Developer's Guide categoryname + "]? " + repository.hasiteminrepository(itemname, itemtype, categoryname)); infobyitemtest(itemid); itemlisttest(itemid); categorytest(); checkinouttest(itemid); historytest(itemid); //. System.out.println("Repository.deleteItem(int itemid)"); repository.deleteitem(itemid); repository.deletecategory(cid); private static void download(inputstream in, String filename) throws Exception { byte[] buf = new byte[in.available()]; in.read(buf); in.close(); FileOutputStream fos = new FileOutputStream(fileName); fos.write(buf); fos.flush(); fos.close(); private static void grouplisttest(int gid) throws Exception { // gid. System.out.println("Repository.getGroupListInGroup(int gid))"); OZRepositoryGroup[] groupinfolist = repository.getgrouplistingroup(0); showgrouplist(groupinfolist); // gid. System.out.println("Repository.getGroupInfo(int gid))"); OZRepositoryGroup groupinfo = repository.getgroupinfo(gid); showgroup(groupinfo); // itemid perm. System.out.println("Repository.getGroupListAuthToItem(int itemid, byte perm)"); String sdmname = "SDM for test.sdm"; final int itemtype = 20002; //OZFrameworkConst.SDM_FILE; createfile(sdmname); int cid = repository.createcategory("/user List Test"); int itemid = repository.createitem(sdmname, itemtype, "", cid, new FileInputStream(sdmName)); 76 FORCS Co., LTD

77 final byte authread = 0x02; groupinfolist = repository.getgrouplistauthtoitem(itemid, authread); showgrouplist(groupinfolist); // categoryid. System.out.println("Repository.getGroupListAuthToCategory( int categoryid, byte perm) "); groupinfolist = repository.getgrouplistauthtocategory(cid, authread); showgrouplist(groupinfolist); repository.deleteitem(itemid); repository.deletecategory(cid); removefile(sdmname); private static void showgrouplist(ozrepositorygroup[] grouplist) { if(grouplist == null) return; for(int i=0; i < grouplist.length; i++) { showgroup(grouplist[i]); private static void showgroup(ozrepositorygroup group) { System.out.println("GroupId : " + group.getgroupid()); System.out.println("GroupName : " + group.getgroupname()); System.out.println("GroupUpperId : " + group.getparentgroupid()); Vector v = group.getgroupadminlist(); showgroupadminusername(v); System.out.println("Permission : " + group.getpermission()); private static void showgroupadminusername(vector v) { Iterator it = v.iterator(); while (it.hasnext()) { System.out.println("GroupAdminUserName : " + it.next()); private static void groupadmintest(int gid) throws Exception{ // Group Admin uid. System.out.println("Repository.updateUserGroupAdmin(int uid, int gid)"); int uid = repository.createuser("test id", " ", gid, ""); System.out.println("Before : "); FORCS Co., LTD 77

78 OZ API Developer's Guide showgroupadminusername(repository.getgroupinfo(gid).getgroupadminlist ()); repository.updateusergroupadmin(uid, gid); System.out.println("After : "); showgroupadminusername(repository.getgroupinfo(gid).getgroupadminlist() ); // uid gid group admin. System.out.println("Repository.isUserGroupAdmin(int uid, int gid)"); System.out.println("Is this user[" + uid + "] a group admin in Group[" + gid + "]? " + repository.isusergroupadmin(uid, gid)); repository.deleteuser(uid); private static void grouptest() throws Exception { // upper_gid System.out.println("Repository.createGroup(String group_name, int upper_gid)"); String groupname = "forcs"; int root_gid = 0; int parent_gid = root_gid; int gid = repository.creategroup(groupname, parent_gid); System.out.println("group_name [upper_gid] : " + groupname + "[" + gid + "]"); // gid System.out.println("Repository.deleteGroup(int gid)"); int temp_gid = repository.creategroup("temporary group", root_gid); repository.deletegroup(temp_gid); //. System.out.println("Repository.updateUpperGroupId(int gid, int uppergid) "); parent_gid = repository.creategroup("temporary group", root_gid); System.out.println("Before Update UpperGroupID : " + (repository.getgroupinfo(gid)).getparentgroupid()); repository.updateuppergroupid(gid, parent_gid); System.out.println("After Update UpperGroupID : " + (repository.getgroupinfo(gid)).getparentgroupid()); //. System.out.println("Repository.updateGroupName(int groupid, String groupname)"); String newgroupname = "( "; 78 FORCS Co., LTD

79 System.out.println("Before Update GroupIDofUser : " + (repository.getgroupinfo(gid)).getgroupname()); repository.updategroupname(gid, newgroupname); System.out.println("After Update GroupIDofUser : " + (repository.getgroupinfo(gid)).getgroupname()); groupadmintest(gid); grouplisttest(gid); repository.deletegroup(parent_gid); private static void createfile(string filename) throws Exception { FileOutputStream fos = new FileOutputStream(new File(fileName)); fos.write("dummy data".getbytes()); fos.flush(); fos.close(); private static void removefile(string filename) { try { File f = new File(fileName); f.delete(); catch(exception e) { private static void userlisttest(int uid) throws Exception { OZRepositoryUser userinfo = null; OZRepositoryUser[] userinfolist = null; int gid = repository.getgroupidofuser(uid); final String sdmname = "SDM for test.sdm"; final int itemtype = 20002; //OZRepositoryItem.SDM_FILE; createfile(sdmname); int cid = repository.createcategory("/user List Test"); int itemid = repository.createitem(sdmname, itemtype, "", cid, new FileInputStream(sdmName)); final byte authread = 0x02; //. System.out.println("Repository.getUserList()"); userinfolist = repository.getuserlist(); showuserinfolist(userinfolist); //. System.out.println("Repository.getUserListInGroup(int gid)"); FORCS Co., LTD 79

80 OZ API Developer's Guide userinfolist = repository.getuserlistingroup(gid); showuserinfolist(userinfolist); //. System.out.println( "Repository.getUserListAuthToItem(int itemid, byte perm)"); userinfolist = repository.getuserlistauthtoitem(itemid, authread); showuserinfolist(userinfolist); //. System.out.println( "Repository.getUserListAuthToCategory(int categoryid, byte perm)"); userinfolist = repository.getuserlistauthtocategory(cid, authread); showuserinfolist(userinfolist); repository.deleteitem(itemid); repository.deletecategory(cid); removefile(sdmname); private static void showuserinfolist(ozrepositoryuser[] userinfolist) { if (userinfolist == null) return; OZRepositoryUser user; Iterator iter; System.out.println( "[i]groupname:username:userid "); for (int i = 0; i < userinfolist.length; i++) { user = userinfolist[i]; iter = user.getgrouplist().iterator(); while (iter.hasnext()) { System.out.println("[" + i + "]" + iter.next() + ":" + user.getusername() + ":" + user.getuserid()); private static void useridtest(int uid) throws Exception { // Group ID. System.out.println( "Repository.updateGroupIdOfUser(int gid, int uid)"); int old_gid = repository.getgroupidofuser(uid); int new_gid = repository.creategroup("group_for_test", old_gid); System.out.println("Before Update GroupIDofUser : " + repository.getgroupidofuser(uid)); repository.updategroupidofuser(new_gid, uid); System.out.println("After Update GroupIDofUser : " + 80 FORCS Co., LTD

81 repository.getgroupidofuser(uid)); //. System.out.println("Repository.getUserIdbyName(String user_name)"); String username = repository.getusernamebyid(uid); uid = repository.getuseridbyname(username); System.out.println("uid[" + uid + "]" + username); repository.updategroupidofuser(old_gid, uid); repository.deletegroup(new_gid); private static void userdesctest(int uid) throws Exception { //. System.out.println( "Repository.updateUserDescription(int uid, String description) "); String description = ".."; System.out.println("Before Update Description : " + repository.getuserdescription(uid)); repository.updateuserdescription(uid, description); System.out.println("After Update Description : " + repository.getuserdescription(uid)); private static void userpwdtest(int uid) throws Exception { // uid pwd check. System.out.println("Repository.checkUserPwd(int uid, String pwd)"); String pwd = "admin"; // uid pwd. System.out.println("Repository.updateUserPwd(int uid, String pwd)"); System.out.println("Before : UserName : " + repository.checkuserpwd(uid, pwd)); repository.updateuserpwd(uid, pwd); System.out.println("After : UserName : " + repository.checkuserpwd(uid, pwd)); private static void userlogintest(int uid) throws Exception { // default login user loginval. System.out.println("Repository.updateLoginDefault(int logindval)"); int logindval = uid; // uid user default login setting. repository.updatelogindefault(logindval); // username login disable. System.out.println("Repository.disableUserLogin(String username)"); String username = repository.getusernamebyid(uid); repository.disableuserlogin("'" + username + "'"); FORCS Co., LTD 81

82 OZ API Developer's Guide // username login enable. System.out.println("Repository.enableUserLogin(String username)"); repository.enableuserlogin("'" + username + "'"); //. System.out.println("Repository.loginToServer()"); System.out.println("loginToServer? " + repository.logintoserver()); // uid logout. System.out.println("Repository.userLogout(int uid)"); System.out.println("Before: Is this user[" + uid + "] logged on now? " + repository.isuserlogin(uid)); //repository.userlogout(uid); System.out.println("After: Is this user[" + uid + "] logged on now? " + repository.isuserlogin(uid)); private static void usertest() throws Exception { //. System.out.println( "Repository.createUser(String user_name, String pwd, int gid, String description)"); String username = "forcs"; String pwd = "111111"; int gid = 0; // String description = "() "; int uid = repository.createuser(username, pwd, gid, description); System.out.println("user_name [uid] : " + username + "[" + uid + "]"); //. System.out.println( "Repository.updateUserName(int userid, String username)"); String newusername = ""; System.out.println("Before : UserName : " + repository.getusernamebyid(uid)); repository.updateusername(uid, newusername); System.out.println("After : UserName : " + repository.getusernamebyid(uid)); userlogintest(uid); userdesctest(uid); useridtest(uid); userlisttest(uid); userpwdtest(uid); //. 82 FORCS Co., LTD

83 System.out.println("Repository.deleteUser(int uid)"); repository.deleteuser(uid); FORCS Co., LTD 83

84 OZ API Developer's Guide Constructor Summary Service(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) Service(String url, String id, String pw, boolean bautologin, boolean useusl) Method Summary void garbagecollect() void stop(boolean check) void restart() Constructor Detail //Daemon - TCP Server public Service(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) //Servlet - HTTP Server public Service(String url, String id, String pw, boolean bautologin, boolean useusl) Argument url ip port Servlet URL ex) String url = "http:// /oz/server"; Daemon IP ex) String ip = " "; Daemon ex) int port = 8003; 84 FORCS Co., LTD

85 id pw bautologin useusl ex) String id = "admin"; ex) String pw = "admin"; ex) boolean bautologin = true; USL ex) boolean useusl = false; Method Detail garbagecollect public void garbagecollect() throws OZCPException JVM garbage collection. stop public void stop(boolean check) throws OZCPException. Argument check true : false : restart public void restart() throws OZCPException. Sample : ServiceSample.java package sample; import oz.framework.api.service; import org.apache.log4j.*; FORCS Co., LTD 85

86 OZ API Developer's Guide public class ServiceSample { public static void main(string[] args) { BasicConfigurator.configure(); // OZServer Info. //* // Daemon String IP = " "; // IP int PORT = 8003; // TCP /*/ // Servlet String URL = "http://www.oz.com/oz/server"; //Servlet URL /**/ // User Info. String ID = "admin"; //default String PWD = "admin"; //default Service service = null; try { //* // Daemon service = new Service(IP, PORT, ID, PWD, false, false); /*/ // Servlet service = new Service(URL, ID, PWD, false, false); /**/ System.out.println(service.getHandlerCount()); // garbagecollection (garbagecollects) service.garbagecollect(); // (restart) //service.restart(); // (serverstop) boolean check = true;// service.stop(check); catch(exception e) { 86 FORCS Co., LTD

87 Constructor Summary Viewer(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) Viewer(String url, String id, String pw, boolean bautologin, boolean useusl) Method Summary byte[] getbytearrayform(string reportname, String categoryname) InputStram getform(string reportname, String CategoryName, boolean iscompress) Parameter[] getuserparameterswithdefaultvalue(string itemname, int itemtype, String categoryname) HCDataModule gethcusdm(string filename, String categoryname) HCDataModule getdatamodule(inputstream sdminput) HCDataModule getdatamodules(string odiname, String CategoryName, Parameter[] parameters, boolean docompress, boolean forcerefresh) HCDataModule getdatamodule(string odiname, String categoryname, Parameter[] parameters, boolean docompress, boolean forcerefresh, String[] invaliddataset, MaxRowsOfSet[] maxrows) Constructor Detail FORCS Co., LTD 87

88 OZ API Developer's Guide //Daemon - TCP Server public Viewer(String ip, int port, String id, String pw, boolean bautologin, boolean useusl) //Servlet - HTTP Server public Viewer(String url, String id, String pw, boolean bautologin, boolean useusl) Argument url ip port id pw bautologin useusl Servlet URL ex) String url = "http:// /oz/server"; Daemon IP ex) String ip = " "; Daemon ex) int port = 8003; ex) String id = "admin"; ex) String pw = "admin"; ex) boolean bautologin = true; USL ex) boolean useusl = false; Method Detail getbytearrayform public byte[] getbytearrayform(string reportname, String categoryname) throws OZCPException. Argument reportname categoryname getform public InputStream getform(string reportname, String categoryname, boolean iscompress) throws OZCPException 88 FORCS Co., LTD

89 . Argument reportname categoryname iscompress getuserparameterswithdefaultvalue public Parameter[] getuserparameterswithdefaultvalue(string itemname, int itemtype, String categoryname) throws OZCPException. itemname Argument itemtype (OZR : / ODI : 10000) categoryname iscompress gethcusdm public HCDataModule gethcusdm(string filename, String categoryname) throws OZCPException SDM. Argument filename categoryname getdatamodules public HCDataModule getdatamodule(inputstream sdminput) throws OZCPException SDM. FETCH (batch), DataModule 2.5 Normal. Argument sdminput SDM FORCS Co., LTD 89

90 OZ API Developer's Guide getdatamodules public HCDataModule getdatamodule(string odiname, String categoryname, Parameter[] parameters, boolean docompress,boolean forcerefresh) throws OZCPException public HCDataModule getdatamodule(string odiname, String categoryname, Parameter[] parameters, boolean docompress, boolean forcerefresh, String[] invaliddataset, MaxRowsOfSet[] maxrows) throws OZCPException. Argument odiname categoryname parameters docompress forcerefresh invaliddataset maxrows Class Parameter(oz.dm.Parameter). - public String name : public String value : MaxRowsOfSet (oz.dm. MaxRowsOfSet). - SetSetName public void SetSetName(String v). 90 FORCS Co., LTD

91 GetSetName public String GetSetName(). SetMaxRow public void SetMaxRow(int v). GetMaxRow public int GetMaxRow(). HCDataModule(oz.dm.hc.HCDataModule) HCDataSet. HCDataSet BCDataSet OZ DataModule Streaming. - public final static String PARAMETERSET_NAME = "OZParam"; : - getdatasetnames public String[] getdatasetnames(). getdatasets public HCDataSet[] getdatasets(string name)... (length) 0. Argument name PrintInfo public void PrintInfo(PrintStream out) FORCS Co., LTD 91

92 OZ API Developer's Guide PrintStream. Argument out PrintStream HCDataSet(oz.dm.hc) HCDataSet OZ DataModule Streaming.. - final public static int BYTEARRAY_DATA_SET = 0x1; final public static int UTF_DATA_SET = 0x2; final public static String BYTEARRAY_PROTOCOL_NAME = "ByteArraySet"; final public static String UTF_PROTOCOL_NAME = "UTFSet"; - getresultset public ResultSet getresultset(). Sample : ViewerSample.java package sample; import oz.framework.api.viewer; import oz.dm.parameter; import oz.dm.hc.hcdatamodule; import oz.framework.cp.ozcpexception; import oz.dm.maxrowsofset; import java.io.*; import org.apache.log4j.*; public class ViewerSample { public static void main(string[] args) { BasicConfigurator.configure(); // OZServer Info. //* // Daemon String IP = " "; // IP 92 FORCS Co., LTD

93 int PORT = 8003; // TCP /*/ // Servlet String URL = "http://www.oz.com/oz/server"; //Servlet URL /**/ // User Info. String ID = "admin"; //default String PWD = "admin"; //default Viewer viewer = null; try { //* // Daemon viewer = new Viewer(IP, PORT, ID, PWD, false, false); /*/ // Servlet viewer = new Viewer(URL, ID, PWD, false, false); /**/ int ODI_FILE_TYPE = 10000; // ODI int OZR_FILE_TYPE = 20001; // OZR String ozrname = "test.ozr"; String odiname = "test.odi"; //ODI String sdmname = "test.sdm"; String categoryname = "/"; // Parameter[] param = new Parameter[0]; // boolean force = false; // boolean compress = false; // DM String[] invalidset = new String[0]; // MaxRowsOfSet[] mx = new MaxRowsOfSet[0]; // // SDM (gethcusdm) HCDataModule usdm = viewer.gethcusdm(sdmname, categoryname); //. (getbytearrayform) byte[] formbytes = viewer.getbytearrayform(ozrname, categoryname); // (getform) InputStream in = viewer.getform(ozrname, categoryname, compress); // //(getuserparameterswithdefaultvalue) param = viewer.getuserparameterswithdefaultvalue(odiname, ODI_FILE_TYPE, categoryname); // Input Stream SDM (getdatamodule) HCDataModule sdm = viewer.getdatamodule( new FileInputStream(sdmName)); FORCS Co., LTD 93

94 OZ API Developer's Guide // (getdatamodules) HCDataModule dmodule = viewer.getdatamodule( odiname, categoryname, param, compress, force); // (getdatamodules) HCDataModule dmodule2 = viewer.getdatamodule( odiname, categoryname, param,compress, force, invalidset, mx); catch (Exception e) { e.printstacktrace(); 94 FORCS Co., LTD

95 API Class Program Class Publisher Class Scheduler FORCS Co., LTD 95

96 OZ API Developer's Guide API. API. Program Publisher Scheduler... API. ozsfw35.jar log4.jar Scheduler server. Server Log. (API classpath "log4.jar" ) 96 FORCS Co., LTD

97 Constructor Summary Program(String ip, int port) Method Summary void createfolder(serverinfo s, String folder) byte[] downloadfile(serverinfo s, String file) FileInfo[] getexternalprogramlist(serverinfo s, String folder) void removefiles(serverinfo s, String folder, String[] files) void removefolder(serverinfo s, String folder, boolean isall) void uploadfile(serverinfo s, String file, byte[] b) Constructor Detail public Program(String ip, int port) throws SchedulerException Argument ip port IP ex) String ip = " "; (:9521) ex) int port = 9521; Method Detail createfolder public void createfolder(serverinfo s, String folder) throws SchedulerException. FORCS Co., LTD 97

98 OZ API Developer's Guide Argument s folder downloadfile public byte[] downloadfile(serverinfo s, String file) throws SchedulerException. Argument s file getexternalprogramlist public FileInfo[] getexternalprogramlist(serverinfo s, String folder) throws SchedulerException. Argument s folder removefiles public void removefiles(serverinfo s, String folder, String[] files) throws SchedulerException. Argument s folder files removefolder public void removefolder(serverinfo s, String folder, boolean isall) throws SchedulerException. Argument s folder isall true : ( ) false : ( ) 98 FORCS Co., LTD

99 uploadfile public void uploadfile(serverinfo s, String file, byte[] b) throws SchedulerException (). Argument s file b Class SchedulerException(oz.scheduler.SchedulerException) Exception. ServerInfo(oz.scheduler.ServerInfo). - setisdaemon public final void setisdaemon(boolean isdaemon). Argument isdaemon Daemon true : Daemon false : Servlet setip public final void setip(string ip) IP. Server Daemon. Argument ip IP setportno public final void setportno(int portno) Port. Server Daemon. FORCS Co., LTD 99

100 OZ API Developer's Guide Argument portno Port seturl public final void seturl(string url) throws IllegalArgumentException URL. Server Servlet. Argument url URL URL, 'http://'. setid public final void setid(string id) ID. Argument id ID setpwd public final void setpwd(string pwd). Argument pwd FileInfo(oz.scheduler.FileInfo.class) (/,,, ). - public boolean isdirectory : () public String name : public long size : public long lastmodified :, :00:00 GMT 100 FORCS Co., LTD

101 Sample : ProgramSample.java package sample; import oz.scheduler.serverinfo; import oz.scheduler.fileinfo; import oz.framework.api.program; import org.apache.log4j.*; public class ProgramSample { public static void main(string[] args) { BasicConfigurator.configure(); String IP = " "; // IP int PORT = 9521; // TCP Program program = null; try { program = new Program(IP, PORT); // ServerInfo serverinfo = new ServerInfo(); serverinfo.setid("admin"); // serverinfo.setpwd("admin"); // serverinfo.setip(ip); //OZ Server IP. daemon serverinfo.setisdaemon(true); //OZ Server daemon, servlet serverinfo.setportno(8003); /* OZ Server Port.daemon * s.seturl(null);//oz Server URL. * URL, //'http://' *. Server Servlet Type.*/ // (createfolder) String foldername = "testfolder"; // program.createfolder(serverinfo, foldername); // (uploadfile) String filename = "testprogram.bat"; // byte [] filebytes = filename.getbytes(); program.uploadfile(serverinfo, foldername+"/"+filename, filebytes); // (downloadfile) String downfilename = "testprogram.bat";// byte bytesarray[] = program.downloadfile(serverinfo, foldername+"/"+downfilename); FORCS Co., LTD 101

102 OZ API Developer's Guide // (getexternalprogramlist) FileInfo fileinfo[] = program.getexternalprogramlist(serverinfo, foldername); for(int i=0;i<fileinfo.length;i++){ FileInfo fi = fileinfo[i]; System.out.println(i); System.out.println(" isdirectory " + fi.isdirectory); System.out.println(" name " + fi.name); System.out.println(" size " + fi.size); System.out.println(" lastmodified " + fi.lastmodified); System.out.println(); // (removefiles) // () String. String file1 = "testprogram.bat"; String file2 = "testprogram2.bat"; String [] files = new String[]{file1 ; //. program.removefiles(serverinfo, foldername, files); // (removefolder) boolean isall = true; // String foldernametoremove = "testfolder"; //. program.removefolder(serverinfo, foldernametoremove, isall); catch(exception e) { e.printstacktrace(); 102 FORCS Co., LTD

103 Constructor Summary Publisher(String ip, int port) Method Summary void createfolder(serverinfo s, String folder) byte[] downloadfile(serverinfo s, String file) FileInfo[] getpublishedfiles(serverinfo s, String folder) void removefiles(serverinfo s, String folder, String[] files) void removefolder(serverinfo s, String folder, boolean isall) Constructor Detail public Publisher(String ip, int port) throws SchedulerException Argument ip port IP ex) String ip = " "; (:9521) ex) int port = 9521; Method Detail createfolder public void createfolder(serverinfo s, String folder) throws SchedulerException. FORCS Co., LTD 103

104 OZ API Developer's Guide Argument s folder downloadfile public byte[] downloadfile(serverinfo s, String file) throws SchedulerException. Argument s file getpublishedfiles public FileInfo[] getpublishedfiles(serverinfo s, String folder) throws SchedulerException. Argument s folder removefiles public void removefiles(serverinfo s, String folder, String[] files) throws SchedulerException. Argument s folder fiels removefolder public void removefolder(serverinfo s, String folder, boolean isall) throws SchedulerException. Argument s folder isall true : ( ) false : ( ) 104 FORCS Co., LTD

105 Class ServerInfo(oz.scheduler.ServerInfo) Program class " class". FileInfo(oz. scheduler.fileinfo.class) Program class " class". Sample : PublisherSample.java package sample; import oz.framework.api.publisher; import oz.scheduler.fileinfo; import oz.scheduler.serverinfo; import org.apache.log4j.*; public class PublisherSample { public static void main(string[] args) { BasicConfigurator.configure(); String IP = " "; // IP int PORT = 9521; // TCP Publisher publisher = null; try { publisher = new Publisher(IP, PORT); // ServerInfo serverinfo = new ServerInfo(); serverinfo.setid("admin"); // serverinfo.setpwd("admin"); // serverinfo.setip(ip); //OZ Server IP. daemon serverinfo.setisdaemon(true); //OZ Server.daemon, servlet serverinfo.setportno(8003); /* OZ Server Port.daemon * s.seturl(null);//oz Server URL. * URL, //'http://' *. Server Servlet Type.*/ // (createfolder) FORCS Co., LTD 105

106 OZ API Developer's Guide String foldername = "excel"; // //publisher.createfolder(serverinfo, foldername); // (downloadfile) String filename = "customer.xls"; // byte bytesarray[] = publisher.downloadfile(serverinfo, filename); // (getpublishedfiles) FileInfo fileinfolist[] = publisher.getpublishedfiles(serverinfo, foldername); for(int i=0; i<fileinfolist.length; i++) { FileInfo fi = fileinfolist[i]; System.out.println(i); System.out.println(" isdirectory="+fi.isdirectory); System.out.println(" name="+fi.name); System.out.println(" size="+fi.size); System.out.println(" lastmodified="+fi.lastmodified); System.out.println(); // (removefiles) // () String. // customer.xls orderinfo.xls String file1 = "customer.xls"; String file2 = "orderinfo.xls"; String testfoldername = "excel"; String [] filestoremove = new String[]{file1, file2; // publisher.removefiles(serverinfo, testfoldername, filestoremove); // boolean isall = true;// String foldernametoremove = "excel";//.. publisher.removefolder(serverinfo, foldernametoremove, isall); catch(exception e) { 106 FORCS Co., LTD

107 Constructor Summary scheduler(string ip, int port) Method Summary void createtask(serverinfo s, SortProperties configmap, SortProperties exportmap) SortProperties getconfiguration(serverinfo s) Vector gettask(serverinfo s) Vector gettaskresult(serverinfo s, String from, String to, String taskid) void modifyconfiguration(serverinfo s, SortProperties configmap, SortProperties exportmap) void removetask(serverinfo s, String task) void stop(serverinfo s, boolean waittask) boolean taskpause(serverinfo s, String task) boolean taskresume(serverinfo s, String task) boolean makepdf(serverinfo s, SortProperties configmap, SortProperties exportmap) public boolean export(serverinfo s, SortProperties configmap, SortProperties exportmap) throws SchedulerException Constructor Detail ppublic scheduler(string ip, int port) Argument ip IP ex) String ip = " "; FORCS Co., LTD 107

108 OZ API Developer's Guide port (:9521) ex) int port = 9521; Method Detail createtask public void createtask(serverinfo s, SortProperties configmap, SortProperties exportmap) throws SchedulerException. Argument s configmap exportmap key "Option". key "Option". getconfiguration public SortProperties getconfiguration(serverinfo s) throws SchedulerException. Argument s gettask public Vector gettask(serverinfo s) throws SchedulerException. Argument s gettaskresult public Vector gettaskresult(serverinfo s, String from, String to, String taskid) throws SchedulerException. 108 FORCS Co., LTD

109 Argument s from to taskid modifyconfiguration public void modifyconfiguration(serverinfo s, SortProperties configmap) throws SchedulerException. Argument s configmap key "Option". removetask public void removetask(serverinfo s, String taskid) throws SchedulerException. Argument s taskid stop public void stop(serverinfo s, boolean waittaskid) throws SchedulerException. Argument s waittaskid taskpause public boolean taskpause(serverinfo s, String taskid) throws SchedulerException. Argument s FORCS Co., LTD 109

110 OZ API Developer's Guide taskid taskresume public boolean taskresume(serverinfo s, String taskid) throws SchedulerException. Argument s taskid makepdf public boolean makepdf(serverinfo s, SortProperties configmap, SortProperties exportmap) throws SchedulerException PDF. : "ViewType=None". Argument s configmap exportmap key "Option". creattask() PDF. PDF key "Option". creattask() PDF. : makepdf API COM ASP "Appendix 1. SchedulerCOM ". export public boolean export(serverinfo s, SortProperties configmap, SortProperties exportmap) throws SchedulerException 110 FORCS Co., LTD

111 . : "ViewType=None". :.pdf,.ozd,.html,.jpg,.xls,.doc,.svg,.txt,.ppt,.tif, csv. s Argument configmap exportmap key "Option". key "Option". : export API COM ASP "Appendix 1. SchedulerCOM ". Class ServerInfo(oz.scheduler.ServerInfo) Program class " class". SortProperties (oz.util.sortproperties) Cache class " class". Option - "ViewType" "None", API, OZD. -,. FORCS Co., LTD 111

112 OZ API Developer's Guide applet.mode viewer.mode applet.useprogressbar viewer.useprogressbar applet.allowmultiframe viewer.allowmultiframe export.mode export.confirmsave information.debug applet.showerrormessage viewer.showerrormessage export export false false true true silent false debug false false - Key Value report_name category_name ex) setproperty("report_name", "crosstab") ex) setproperty("category _name", "temp") - Key Value dm_server_check dm_server_name odi_name odi_category_na me "check" "null" SDM ODI ex) setproperty("dm_server_check", "check") (Repository odi category SDM ) ex) setproperty("dm_server_name", test1.sdm") ODI ex) setproperty("odi_name","testodi.odi") ODI ( "/" ) ex) setproperty("odi_category_name","/test") 112 FORCS Co., LTD

113 - Key Value task_type "viewertag",. "SchedulerViewerTagSample.java". ex) setproperty("task_type ", "viewertag") - Key Value external_progra m_check external_progra m_command "check" "null" ex) setproperty("external_program_check", "check") ("SCH_HOME/External" ) ex) SetProperty("external_program_command", "notepad.bat") Key Value mail_check mail_notify_error _check mail_recipient_to mail_recipient_cc "check" "null" "check" "null" ex) setproperty("mail_check", "check") ex) setproperty("mail_notify_error_check", "null") ex) setproperty("mail_recipient_to", ex) setproperty("mail_recipient_cc", FORCS Co., LTD 113

114 OZ API Developer's Guide mail_recipient_b cc mail_subject mail_text_messa ge mail_html_comm ent html_mail_conte nt mail_attach_list "check" "null" "check" "null" ex) setproperty("mail_recipient_bcc", ex) setproperty("mail_subject", "") ex) setproperty("mail_text_message", "") HTML ex) setproperty("mail_html_comment","check") HTML ex) setproperty("html_mail_content","check") ( '/' ) ex) setproperty("mail_attach_list","excel/pdf/word") Key Value file_export_list ( '/' ) ex) setproperty("file_export_list ", "xls/pdf/tif" Key Value parameter_count ex) setproperty("parameter_count", "1") parameter_name _1... parameter_name _n (n : ) ex) setproperty("parameter_name_1", "[FORM].empNo") 114 FORCS Co., LTD

115 parameter_value _1... parameter_value _n (n : ) ex) setproperty("parameter_value_1", " 10") : ODI,. "[FORM].". empno "[FORM].empNo". ODI ODI. ODI "testodi" "id" "testodi.id". ODI Key Value odi_parameter_ count ex) setproperty("odi_parameter_count", "1") odi_parameter_n ame_1... odi_parameter_n ame_n odi_parameter_v alue_1... odi_parameter_v alue_n (n : ) ex) setproperty("odi_parameter_name_1", "id") (n : ) ex) setproperty("odi_parameter_value_1", " 10") : ODI, ODI ODI. FORCS Co., LTD 115

116 OZ API Developer's Guide - Key Value launch_type "once" "immediately" "periodically" once : immediately : periodically : ex) setproperty("launch_type", "once") launch_ type = once Key Value execution_year execution_month execution_day execution_hour execution_min ex) setproperty("execution_year", "2005") ex) setproperty("execution_month", "12") ex) setproperty("execution_day", "30") ex) setproperty("execution_hour", "10") ex) setproperty("execution_minute", "30") launch_ type = periodically Key Value start_year start_month start_day periodically_exec ution_day_type "daily" "weekly" "monthly" ex) setproperty("start_year", "2002") ex) setproperty("start_month", "11") ex) setproperty("start_day", "16") ex) setproperty("periodically_execution_day_ type", "daily") 116 FORCS Co., LTD

117 periodically_ execution_day_type = daily Key Value daily_type daily_every_days weekday ex) setproperty("daily_type", "weekday") () ex) 2 : setproperty ("daily_every_days", "2") periodically_ execution_day_type = weekly Key Value weekly_every_w eeks weekly_monday_ check weekly_tuesday_ check weekly_wednesd ay_check weekly_thursday _check weekly_friday_ch eck weekly_saturday _check weekly_sunday_ check "check" "null" "check" "null" "check" "null" "check" "null" "check" "null" "check" "null" "check" "null" ex) setproperty("weekly_every_weeks", "2") ex) setproperty("weekly_monday_check", "check") ex) setproperty("weekly_tuesday_check", "check") ex) setproperty("weekly_wednesday_check", "check") ex) setproperty("weekly_thursday_check", "check") ex) setproperty("weekly_friday_check", "check") ex) setproperty("weekly_saturday_check", "check") ex) setproperty("weekly_sunday_check", "check") periodically_ execution_day_type = monthly Key Value monthly_every_ months monthly_type "specific_day", "day_of_week", "user_defined" ( ) ex) setproperty("monthly_every_months", "2") ex) setproperty("monthly_type", "specific_day") FORCS Co., LTD 117

118 OZ API Developer's Guide monthly_days monthly_which_ week monthly_which_ week_day monthly_user_de fined_days "T1" "T2" "T3"" T4" "T5" "sunday" "monday" "tuesday" "wednesday" "thursday" "friday" "saturday" ex) setproperty("monthly_days", "2") T1 : T2 : T3 : T4 : T5 : ex) setproperty("monthly_which_week", "T2") ex) : setproperty("monthly_which_week_day", "monday") (,) ex) 1,15 : setproperty("monthly_user_defined_days", "1,15") - Key Value periodically_exec ution_time_ type "once" "repeat" "user_defined" (,, ) ex) setproperty ("periodically_execution_time_type","once") periodically_ execution_time_ type = once Key Value once_hour once_min ex) setproperty("once_hour", "01") ex) setproperty("once_min", "00") 118 FORCS Co., LTD

119 periodically_ execution_time_ type = repeat Key Value repeat_every_ho urs repeat_every_mi nutes repeat_start_hou r repeat_start_min ute repeat_end_hour repeat_end_minu te ex) setproperty("repeat_every_hours", "01") ex) setproperty("repeat_every_minutes", "04") ex) setproperty("repeat_start_hour", "02") ex) setproperty("repeat_start_minute", "05") ex) setproperty("repeat_end_hour", 09") ex) setproperty("repeat_end_minute", "35") : periodically_ execution_time_ type = user_defined Key Value user_defined_tim e (:) (,) ex) setproperty("user_defined_time", "01:30,13:30") CSV Key Value csv.filename csv.pagetitle csv.pageline "page" CSV ex) setproperty("csv.filename","test.csv") ex) setproperty("csv.pagetitle", "<<Page>>") ex) setproperty("csv.pageline ", "7") FORCS Co., LTD 119

120 OZ API Developer's Guide csv.pagestyle csv.separator csv.removerange csv.exceptfirstpa ge csv.savetointeger "none" "# <page>" "# <page> ---" "--- #<page>" "<page> #" "Tab" "Space" "Comma" "true" "false" "true" "false" (:none - ) ex) setproperty("csv.pagestyle", "none") CSV ex) setproperty("csv.separator", "Tab") (", " ) ex) setproperty("csv.removerage", "1, 3") true : false : () ex) setproperty("csv.exceptfirstpage", "true") true : false : () ex) setproperty("csv.savetointeger", "true") Excel Key Value Excel.filename ex) setproperty("excle. filename ", "test.xls") Excel.numberfor mat Excel.savefont Excel.matchmode "columnpersheet" "paperpersheet" ex) setproperty("excel.numberformat ", "#,##0.00") ex) setproperty("excel.savefont", "Arial, Courier") columnpersheet : Sheet () paperpersheet : Sheet ex) setproperty("excel.matchmode", "columnpersheet") 120 FORCS Co., LTD

121 Excel.matchsubm ode excel.removeran ge excel.removeopti on "RowFirst" "ColumnFirst" "FirstPageOnly" "FirstPageExcept" "AllPage" (:RowFirst) ex) setproperty("excel.matchsubmode", "rowfirst") (", " ) ex) setproperty("excel.removerange", "1,3") excel.removerange FirstPageOnly : FirstPageExcept: AllPage : () ex) setproperty("excel.removeoption", "AllPage") excel.removeblan k "true" "false" (:false) ex) setproperty("excel.removeblank", "Yes") HTML Key Value html.filename HTML ex) setproperty("html.filename", "test.html") html.imagepath Html (URL ) ex) setproperty("html.imagepath","file://c:/image"); html.vertical (:) ex) setproperty("html.vertical","1") html.horizontal (:) ex) setproperty("html.horizontal","1") html.savebypage "true" "false" HTML true : false : () ex) setproperty("html.savebypage","true") FORCS Co., LTD 121

122 OZ API Developer's Guide html.offsetx x (:) ex) setproperty("html.offsetx","1") html.offsety y (:) ex) setproperty("html.offsety","1") Jpeg Key Value jpg.filename JPEG ex) setproperty("jpg.filename", "test.jpg") OZD Key Value ozd.filename ozd.memoallowe d ozd.saveall ozd.password "true" "false" "true" "false" OZD ex) setproperty("ozd. filename ", "test.ozd") true : () false : ex) setproperty("ozd. memoallowed ", "true") : Direct true : () false : ex) setproperty("ozd.saveall ", "true") ex) setproperty("ozd.password", "admin") PDF Key Value pdf.filename PDF ex) setproperty("pdf.filename", "test.pdf") 122 FORCS Co., LTD

123 pdf.saverange pdf.title pdf.subject pdf.creator pdf.author pdf.keyword pdf.userpasswor d pdf.masterpassw ord (", " ) ex) setproperty("pdf.saverange ", "1.3") PDF ex) setproperty("pdf.title", "Report") PDF ex) setproperty("pdf.title", "Report") ex) setproperty("pdf.creator", "Forcs") ex) setproperty("pdf.author", "Forcs") PDF ex) setproperty("pdf.keyword", "oz") PDF ex) setproperty("pdf.userpassword", "user") PDF ex) setproperty("pdf.masterpassword", "admin") pdf.printable PDF (:true) ex) setproperty("pdf.printable", "true") PPT Key Value ppt.filename PPT ex) setproperty("ppt.filename", "test.ppt") SVG Key Value svg.filename SVG ex) setproperty("svg.filename", "test.svg") FORCS Co., LTD 123

124 OZ API Developer's Guide Text Key Value text.filename Text ex) setproperty("text.filename","test.txt") text.pagetitle "page" ex) setproperty("csv.pagetitle", "<<Page>>") text.pageline ex) setproperty("text.pageline ", "7") text.pagestyle "none" "# <page>" "# <page> ---" "--- #<page>" "<page> #" (:none - ) ex) setproperty("text.pagestyle", "none") text.separator "Tab" "Space" "Comma" Text ex) setproperty("text.separator", "Tab") text.removerage (", " ) ex) setproperty("text.removerage", "1, 3") text.exceptfirstp age text.savetointege r "true" "false" "true" "false" true : false : () ex) setproperty("text.exceptfirstpage", "true") true : false : () ex) setproperty("text.savetointeger", "true") Tiff Key Value tiff.filename Tiff ex) setproperty("tiff.filename", "test.tif") 124 FORCS Co., LTD

125 tiff.encode "G3" "G4" Tiff G3: fax G3 Tiff () G4 : fax G4 Tiff ex) setproperty("tiff.encode", "G3") Word Key Value word.filename ex) setproperty("word.filename", "test.doc") Value "/." "%%\Repository/"., "FORCS" CSV setproperty("csv.filename", "FORCS/test.csv"), "%%\Repository/FORCS" "test.csv". modifyconfiguration ConfigMap Key Value SchedulerPort SchedulingInfoFil epath SMTPServer ( : "9521") ex) p.setproperty("schedulerport", "9521"); ex) p.setproperty("schedulinginfofilepath","%sch_hom E%/ScheduledTask"); SMTP ex) p.setproperty("smtpserver", "mail.forcs.com"); SMTPServerProt SMTP ex) p.setproperty("smtpserverprot", "25"); MailFrom ex) p.setproperty("mailfrom", FORCS Co., LTD 125

126 OZ API Developer's Guide TempRepositoryF ilepath ex) p.setproperty("temprepositoryfilepath", "%SCH_HOME%/Te mp Repository"); RepositoryFileRo otpath ex) p.setproperty("repositoryfilerootpath", "%SCH_HOME%/Repository"); ExternalProgram FilePath ex) p.setproperty("externalprogramfilepath", "%SCH_HOME%/External"); ErrorNotifyToSen der "true" "false" true : false : ex) p.setproperty("errornotifytosender", "false"); Sample : SchedulerSample.java package sample; import oz.framework.api.*; import oz.scheduler.taskresult; import oz.scheduler.serverinfo; import oz.scheduler.scheduledtask; import oz.util.sortproperties; import java.util.vector; import java.io.*; import org.apache.log4j.*; public class SchedulerSample { private static String[][] mailrelatedproperties = { // {"report_name", "test.ozr",// {"category_name","/", // {"cfg.type","new", // Task new, edit // {"odi_name","testodi.odi", {"odi_category_name","/test", {"dm_server_check", "check", // {"dm_server_name", "test1.sdm",// 126 FORCS Co., LTD

127 // {"odi_name","testodi.odi", // odi {"odi_category_name","/test",// odi {"external_program_check", "check", {"external_program_command", "notepad.bat", //. // {"parameter_count", "1", // {"parameter_name_1", "[FORM].empNo", // {"parameter_value_1", "10", // // ODI {"odi_parameter_count", "1", // {"odi_parameter_name_1", "id", // {"odi_parameter_value_1", "12",// // {"launch_type", "once", //("immediately","periodically") {"execution_year", "2003",//- {"execution_month", "12", //- {"execution_day", "17", //- {"execution_hour", "10", //- {"execution_min", "30", //- {"periodically_execution_day_type","daily", //("weekly", "monthly") {"daily_type", "weekday", //("specific_day") {"periodically_execution_time_type", "once", // ( "repeat", "user_defined") {"once_hour", "01", // - {"once_min", "00", // - // {"mail_check", "check", //- {"html_mail_content", "check", // html {"mail_notify_error_check", "null", // - {"mail_recipient_to", // {"mail_recipient_cc", // {"mail_recipient_bcc", {"mail_subject", "", // {"mail_text_message", "", // {"mail_attach_list", "csv/excel/html/ozd/pdf/text/tiff/word/ppt/jpg/svg", // {"file_export_list", "csv/xls/html/ozd/pdf/txt/tif/doc/ppt/jpg/svg" FORCS Co., LTD 127

128 OZ API Developer's Guide ; // Export private static String[][] attachrelatedproperties = { // CSV {"csv.filename ", "test.csv", // csv {"csv.pagetitle ", "page", // {"csv.pageline ", "7", // {"csv.pagestyle", "none", // {"csv.separator ", "Tab", // CSV {"csv.removerange ", "1,3", // CSV {"csv.exceptfirstpage ", "true",// {"csv.savetointeger ", "true", // // {"excel.filename ", "test.xls", // excel {"excel.numberformat ", "#,##0.00",// {"excel.savefont", "Arial", // {"excel.matchmode", "columnpersheet", // {"excel.matchsubmode", "rowfirst", // {"excel.removerange", "1,3", // {"excel.removeoption ", " firstpageonly", // {"excel.removeblank ", " true", // // html {"html.filename ", "test.html", // html {"html.imagepath ", "file://c:/image", // html {"html.vertical ", "1", // html {"html.horizontal ", "1", // html {"html.savebypage ", "true", // html {"html.offsetx ", "1", // x offset {"html.offsety ", "1", // y offset // ozd {"ozd.filename ", "test.ozd", //OZD {"ozd.memoallowed ", "true", // {"ozd.password", "admin", // ozd // pdf {"pdf.filename ", "test.pdf", {"pdf.saverange ", "1.3", {"pdf.title ", "Report", {"pdf.subject ", "OZ", {"pdf.creator ", "hong", //pdf //pdf //pdf //pdf //pdf 128 FORCS Co., LTD

129 {"pdf.author ", "hong", //pdf {"pdf.keyword ", "oz", //pdf {"pdf.userpassword", "user", //pdf {"pdf.masterpassword ", "admin",//pdf {"pdf.printprotected ", "true", //pdf // text {"text.filename ", "test.txt", //text {"text.pagetitle ", "page", // {"text.pageline ", "7", // {"text.pagestyle", "none", // {"text.separator ", "Tab", //text {"text.removerange ", "1,3", //text {"text.exceptfirstpage ", "true", // {"text.savetointeger ", "true", // // Tiff {"tiff.filename ", "test.tif",//tiff {"tiff.encode ", "G3", //tiff // word {"word.filename ", "test.doc", //word // ppt {"ppt.filename ", "test.ppt ", //ppt // jpg {"jpg.filename ", "test.jpg ", //jpg ; // svg {"svg.filename ", "test.svg" //svg private static String[][] schedulerrelatedproperties = { {"SchedulerPort", "9521", // {"schedulerserver", "%SCH_HOME%/ScheduledTask", // {"SMTPServer", "mail.forcs.com", //SMTP {"SMTPServerPort", "25", //SMTP {"MailFrom", {"TempRepositoryFilePath", "%SCH_HOME%/TempRepository", // {"RepositoryFileRootPath", "%SCH_HOME%/Repository", //PDF {"ExternalProgramFilePath", "%SCH_HOME%/External", // {"ErrorNotifyToSender", "false" // FORCS Co., LTD 129

130 OZ API Developer's Guide ; public static void main(string[] args) { BasicConfigurator.configure(); String IP = " "; // IP int PORT = 9521; // TCP String[][] values = null; Scheduler scheduler = null; try { scheduler = new Scheduler(IP, PORT); // ServerInfo serverinfo = new ServerInfo(); serverinfo.setid("admin"); // serverinfo.setpwd("admin"); // serverinfo.setip(ip); //OZ Server IP. daemon serverinfo.setisdaemon(true); //OZ Server.daemon, servlet serverinfo.setportno(8003); /* OZ Server Port.daemon * s.seturl(null);//oz Server URL. * URL, //'http://' *. Server Servlet Type.*/ // (createtask) // //. //check, uncheck "check", "null". SortProperties props = new SortProperties(); setproperties(props, mailrelatedproperties); SortProperties exportmap = new SortProperties(); setproperties(exportmap, attachrelatedproperties); scheduler.createtask(serverinfo, props, exportmap); scheduler.makepdf(serverinfo, props, exportmap); scheduler.makepdfbypooling(serverinfo, props, exportmap); // (modifyconfiguration) SortProperties pro = new SortProperties(); setproperties(pro, schedulerrelatedproperties); scheduler.modifyconfiguration(serverinfo, pro); // (getconfiguration) pro = scheduler.getconfiguration(serverinfo); 130 FORCS Co., LTD

131 pro.list(system.out); /* * (gettask) * *, *. */ ScheduledTask stask = new ScheduledTask(); // setting stask.taskid = "parameter_test.ozs"; // stask.reportname = "/parameter_test"; // stask.schedulingtypestr = "Periodically"; // stask.lastruntimestr = ""; // stask.nextruntimestr = " :00";// stask.status = 'W'; //(WAITING,RUNNING,PAUSE.) ScheduledTask[] tasklist = scheduler.gettask(serverinfo); for (int i = 0; i < tasklist.length; i++) { showtask(tasklist[i]); /* * (gettaskresult) * *, *. */ // TaskResult tr = new TaskResult(); tr.taskid = "parameter_test.ozs"; // tr.completedtime = " :00"; // tr.issuccessful = "true"; // tr.formfilename = "/parameter_test"; // tr.paraminfo = "0{"; // tr.schedulingtype = "Periodically"; // //-. //. tr.errormsg = "Fail to execute scheduling task with OZServer. :"; String from = " "; // String to = " "; // TaskResult[] trlist = scheduler.gettaskresult(serverinfo, from, to, tr.taskid); for (int i = 0; i < trlist.length; i++) { showtaskresult(trlist[i]); FORCS Co., LTD 131

132 OZ API Developer's Guide String task = stask.taskid; // // (taskpause) boolean b = scheduler.taskpause(serverinfo, task); // (taskresume) boolean bool = scheduler.taskresume(serverinfo, task); // (removetask) scheduler.removetask(serverinfo, task); //.(stop) boolean waittask = true; // boolean scheduler.stop(serverinfo, waittask); catch(exception e) { e.printstacktrace(); private static void setproperties(sortproperties p, String[][] values) { for(int i=0; i<values.length; i++) { p.setproperty(values[i][0], values[i][1]); private static void showtask(scheduledtask t) { System.out.println(" " + t.taskid); System.out.println(" " + t.reportname); System.out.println(" " + t.schedulingtypestr); System.out.println(" " + t.lastruntimestr); System.out.println(" " + t.nextruntimestr); System.out.println(" " + t.status); System.out.println(""); private static void showtaskresult(taskresult tr) { System.out.println(" " + tr.taskid); System.out.println(" " + tr.completedtime); System.out.println(" " + tr.issuccessful); System.out.println(" " + tr.formfilename); System.out.println(" " + tr.paraminfo); System.out.println(" " + tr.schedulingtype); System.out.println(" " + tr.errormsg); System.out.println(""); 132 FORCS Co., LTD

133 Sample : SchedulerViewerTagSample.java package sample; import oz.framework.api.*; import oz.scheduler.taskresult; import oz.scheduler.serverinfo; import oz.scheduler.scheduledtask; import oz.util.sortproperties; import java.util.vector; import java.io.*; import org.apache.log4j.*; import oz.scheduler.schedulerexception; public class SchedulerViewerTagSample { public static void main(string[] args) throws SchedulerException { BasicConfigurator.configure(); Scheduler scheduler = null; scheduler = new Scheduler(" ", 9521); // ServerInfo serverinfo = new ServerInfo(); serverinfo.setid("admin"); // serverinfo.setpwd("admin"); // serverinfo.setisdaemon(true); serverinfo.setip(" "); //OZ Server IP. daemon serverinfo.setportno(8003); SortProperties config = new SortProperties(); //. config.setproperty("task_type", "viewertag"); // Task new, edit config.setproperty("cfg.type", "new"); // (:"immediately", :"periodically") config.setproperty("launch_type", "immediately"); SortProperties export = new SortProperties(); // export.setproperty("connection.server", " "); export.setproperty("connection.port", "8003"); export.setproperty("connection.reportname", "/parameter_test.ozr"); FORCS Co., LTD 133

134 OZ API Developer's Guide export.setproperty("applet.mode", "export"); export.setproperty("applet.useprogressbar", "false"); export.setproperty("applet.allowmultiframe", "true"); export.setproperty("connection.pcount", "2"); export.setproperty("connection.args1", "formparam1="); export.setproperty("connection.args2", "formparam2="); export.setproperty("export.mode", "silent"); // export.setproperty("export.saveonefile", "true"); export.setproperty("connection.fetchtype", "BATCH"); export.setproperty("export.confirmsave", "false"); export.setproperty("information.debug", "debug"); export.setproperty("applet.showerrormessage", "false"); export.setproperty("odi.parameter_test.pcount", "2"); export.setproperty("odi.parameter_test.args1", "odiparam1="); export.setproperty("odi.parameter_test.args2", "odiparam2="); export.setproperty("odi.odinames", "parameter_test"); export.setproperty("export.format", "csv/xls/html/ozd/pdf/txt/tif/doc/ppt/jpg/svg"); export.setproperty("csv.filename", "1.csv"); export.setproperty("excel.filename", "1.xls"); export.setproperty("html.filename", "1.html"); export.setproperty("ozd.filename", "1.ozd"); export.setproperty("pdf.filename", "1.pdf"); export.setproperty("text.filename", "1.txt"); export.setproperty("tiff.filename", "1.tif"); export.setproperty("word.filename", "1.doc"); export.setproperty("ppt.filename", "1.ppt"); export.setproperty("jpg.filename", "1.jpg"); export.setproperty("svg.filename", "1.svg"); // export.setproperty("viewer.childcount", "1"); export.setproperty("child1.connection.server", " "); export.setproperty("child1.connection.port", "8003"); export.setproperty("child1.connection.reportname", "/parameter_test.ozr"); export.setproperty("child1.applet.mode", "export"); export.setproperty("child1.applet.useprogressbar", "false"); export.setproperty("child1.applet.allowmultiframe", "true"); export.setproperty("child1.export.mode", "silent"); export.setproperty("child1.connection.fetchtype", "BATCH"); export.setproperty("child1.export.confirmsave", "false"); export.setproperty("child1.information.debug", "debug"); export.setproperty("child1.applet.showerrormessage", "false"); export.setproperty("child1.connection.pcount", "2"); 134 FORCS Co., LTD

135 export.setproperty("child1.connection.args1", "formparam1= 1"); export.setproperty("child1.connection.args2", "formparam2= 2"); export.setproperty("child1.odi.odinames", "parameter_test"); export.setproperty("child1.odi.parameter_test.pcount", "2"); export.setproperty("child1.odi.parameter_test.args1", "odiparam1= 3"); export.setproperty("child1.odi.parameter_test.args2", "odiparam2= 4"); //. export.setproperty("child1.export.format", "csv/xls/html/ozd/pdf/txt/tif/doc/ppt/jpg/svg"); export.setproperty("child1.csv.filename", "child_1.csv"); export.setproperty("child1.excel.filename", "child_1.xls"); export.setproperty("child1.html.filename", "child_1.html"); export.setproperty("child1.ozd.filename", "child_1.ozd"); export.setproperty("child1.pdf.filename", "child_1.pdf"); export.setproperty("child1.text.filename", "child_1.txt"); export.setproperty("child1.tiff.filename", "child_1.tif"); export.setproperty("child1.word.filename", "child_1.doc"); export.setproperty("child1.ppt.filename", "child_1.ppt"); export.setproperty("child1.jpg.filename", "child_1.jpg"); export.setproperty("child1.svg.filename", "child_1.svg"); // API EM. String taskid = scheduler.createtask(serverinfo, config, export); FORCS Co., LTD 135

136 OZ API Developer's Guide API OZLauncherDll 136 FORCS Co., LTD

137 OZLauncherDll. Function Summary void_stdcall SetPath(LPCTSTR strpath) void_stdcall SetClassNameForJava(LPCTSTR strclassname) void_stdcall SetPackageNameForJava(LPCTSTR strpackages) void_stdcall SetMSViewerTypeForJava(int type) void_stdcall SetCommand(LPCTSTR strcommand) void_stdcall SetDataForJava(LPCTSTR strdata) BOOL_stdcall CreateOZViewer(LPCTSTR str_param, int n_type) LPCTSTR_stdcall GetResult() void_stdcall Release() Function Detail SetPath void_stdcall SetPath(LPCTSTR strpath) Applet ActiveX. Argument strpath Applet ActiveX SetClassNameForJava void_stdcall SetClassNameForJava(LPCTSTR strclassname) Applet Main Class.( Applet ) Argument strclassname Main Class FORCS Co., LTD 137

138 OZ API Developer's Guide Example SetClassNameForJava("oz.application.OZIEApplication"); SetCommand("/string"); SetPackageNameForJava void_stdcall SetPackageNameForJava(LPCTSTR strpackages). [;].( Applet ). Argument strpackages Example SetPackageNameForJava("ozapp.zip; ozviewer.jar"); SetMSViewerTypeForJava void_stdcall SetMSViewerTypeForJava(int type) MS VM.( Applet ) Argument type Wjview. 2 Jview. SetCommand void_stdcall SetCommand(LPCTSTR strcommand). Argument strcommand Example SetCommand("/locale ko/kr /mode alone /slp true /launchstring"); SetDataForJava void_stdcall SetDataForJava(LPCTSTR strdata) Heavy client. SDM.( Applet ) Argument strdata CreateOZViewer BOOL_stdcall CreateOZViewer(LPCTSTR str_param, int n_type). true false. 138 FORCS Co., LTD

139 Argument str_param n_type. "n" Applet, 2 ActiveX. Example CreateOZViewer("connection.server= \n toolbar.all=true\n information.debug=debug\n information.bmt=true\n connection.port=8003\n connection.reportname=ozcar.xml\n connection.compressedform=true\n", 1); GetResult LPCTSTR_stdcall GetResult() Export. Applet.printcommand Applet.exportcommand... - Return GetResult(). Export Print <oz export dlg> code path file name </oz export dlg> <oz printer> message code report name printer name print copy print pages print range user name </oz printer> code : 0 =, 1 = path : file name : message : code : 0 =, 1 = report name : printer name : print copy : print pages : print range : user name : FORCS Co., LTD 139

140 OZ API Developer's Guide Release() void stdcall Release().. ActiveX SetCommand("/string"); SetPath("./"); CreateOZViewer("connection.server= \n toolbar.all=true\n information.debug=debug\n information.bmt=true\n connection.port=8003\n connection.reportname=ozcar.xml\n connection.compressedform=true",1); result = GetResult(); Release(); Example Applet SetPath("./"); SetClassNameForJava("oz.application.OZIEApplication"); SetPackageNameForJava("ozapp.zip"); SetMSViewerTypeForJava(2); SetCommand("/locale ko/kr /mode alone /slp true /launchstring"); CreateOZViewer("connection.server= \n toolbar.all=true\n information.debug=debug\n information.bmt=true\n connection.port=8003\n connection.reportname=ozcar.xml\n connection.compressedform=true\n", 1); result = GetResult(); Release(); 140 FORCS Co., LTD

141 User Data Store UDS UDS UDS FORCS Co., LTD 141

142 OZ API Developer's Guide UDS(User Data Store) Non-DB Java Interface, CSV, XML EJB, Servlet, ASP, JSP, Applet Result Set OZ User Data Source Interface JDBC Driver ODBC Driver (, ) UDS ResultSet.. UDS SQL FORCS Co., LTD

143 JDBC UDS. OZ Server OZ Designer Query String ResultSet JDBC Driver DBMS JDBC Driver DBMS JDBC Driver DBMS ResultSet. ResultSet Java JDBC java.sql.resultset Interface (implement)., DBMS DBMS JDBC Driver java.sql.resultset Interface Concrete ResultSet. JDBC Driver java.sql.resultset Interface. OZ Server OZ Designer () Custom ResultSet Custom JDBC Driver UDS(User Data Store) JDBC Driver Custom Driver java.sql.resultset interface ResultSet. JDBC Driver. oz.uds. UserDataStore Interface UserDataStore Interface ResultSet Interface. oz.uds.userdatastore interface 4. FORCS Co., LTD 143

144 OZ API Developer's Guide package oz.uds; import java.sql.*; public interface OZUserDataStore { public void init() throws OZUserDataStoreException; public ResultSet getresultset(string argument) throws OZUserDataStoreException; public void freeresultset(resultset rst); public void close();. void init() ResultSet getresultset(string argument) void freeresultset(resultset rst) void close() UDS,. Argument() ResultSet. ResultSet, getresultset ResultSet. UDS,. : init(), close(). 144 FORCS Co., LTD

145 UDS getresultset. UDS Source UDS Main Argument. import oz.uds.*; import java.sql.resultset; public class Extdata implements OZUserDataStore{ public void init() throws OZUserDataStoreException { // UDS. DB. public ResultSet getresultset(string argument) throws OZUserDataStoreException { // Argument Resultset. // Argument OZ. public void freeresultset(resultset rst){ // getresultset ResultSet. // ResultSet Close. public void close() { // UserDataSet. // DB Disconnection. FORCS Co., LTD 145

146 OZ API Developer's Guide ResultSet ResultSet ResultSet. ResultSet. (.) JDBC javasql.resultset Interface 30 UDS. import java.sql.*; import java.math.bigdecimal; import java.util.calendar; import java.util.enumeration; public class ResultSet_User implements ResultSet{ public ResultSet_User( ) { public boolean next() throws SQLException{ //. public String getstring(string columnname) throws SQLException{ //. // getstring // Method. // getboolean(string columnname) // getbyte(string columnname) // getshort(string columnname) // getint(string columnname // getlong(string columnname // getfloat(string columnname) // getdouble(string columnname // getbigdecimal(string columnname) // getdate(string columnname) // gettime(string columnname) // gettimestamp(string columnname) // getblob(string columnname) // getclob(string columnname) // getbinarystream(string columnname) public ResultSetMetaData getmetadata() throws SQLException{ 146 FORCS Co., LTD

147 // ResultSetMetaData // ResultSetMetaData Method. ResultSetMetaData ResultSetMetaData. import java.sql.sqlexception; import java.sql.types; import java.util.*; public class ResultSetMetaData_User implements ResultSetMetaData{ public ResultSetMetaData_LGeds(String[] meta) { public int getcolumncount() throws SQLException{ //. public String getcolumnname(int column) throws SQLException{ // (column). public int getcolumntype(int column) throws SQLException{ // (column) UDS, UDS. <UdsFile.java> import oz.uds.*; import java.sql.resultset; import java.io.filereader; import java.io.ioexception; import java.util.stringtokenizer; import java.util.vector; FORCS Co., LTD 147

148 OZ API Developer's Guide public class UdsFile implements OZUserDataStore{ private StringBuffer Sbuffer; private Vector mainv; //subv. private Vector subv; private String[][] data; private String[] meta; private static final String rootfilename = ""; private static final String maindiv = "\n"; private static final String subdiv = "\,"; public void init() throws OZUserDataStoreException { mainv = new Vector(); public ResultSet getresultset(string command) throws OZUserDataStoreException { FileReader in = null; Sbuffer = new StringBuffer(); try{ in = new FileReader(rootFileName + command); char[] buffer = new char[256]; int n; while((n = in.read(buffer)) > -1){ Sbuffer.append(new String(buffer, 0, n)); catch(ioexception e){ e.printstacktrace(); throw new OZUserDataStoreException(e.getMessage()); finally { try{ if(in!= null)in.close(); catch(ioexception e){ finally{ in = null; String s = Sbuffer.toString(); ////////////////////////////////////////////////////////////////////////////// StringTokenizer st1 = new StringTokenizer(s,mainDiv); StringTokenizer st2; String tmpstring; /////////////////////meta////////////////////// if(st1.hasmoretokens()){ tmpstring = st1.nexttoken().trim(); st2 = new StringTokenizer(tmpString,subDiv); subv = new Vector(); 148 FORCS Co., LTD

149 while (st2.hasmoretokens()){ subv.addelement(st2.nexttoken().trim()); meta = new String[subV.size()]; subv.copyinto(meta); //////////////////////////////////////////////// while (st1.hasmoretokens()) { tmpstring = st1.nexttoken().trim(); st2 = new StringTokenizer(tmpString,subDiv); subv = new Vector(); while (st2.hasmoretokens()){ subv.addelement(st2.nexttoken().trim()); mainv.addelement(subv); data = new String[mainV.size()][]; for(int i = 0; i < mainv.size(); i++){ subv = (Vector)mainV.elementAt(i); data[i] = new String[subV.size()]; subv.copyinto(data[i]); Sbuffer = null; mainv.clear(); //////////////////////////////////////////////////////// if(meta == null data == null){ throw new OZUserDataStoreException("Data is Invalide"); return new ResultSet_File(meta, data); public void freeresultset(resultset rst){ Sbuffer = null; data = null; meta = null; mainv.clear(); public void close() { Sbuffer = null; data = null; meta = null; mainv = null; <ResultSet_File.java> import java.sql.*; import java.math.bigdecimal; FORCS Co., LTD 149

150 OZ API Developer's Guide import java.util.calendar; import java.util.enumeration; public class ResultSet_File implements ResultSet{ private String[][] data; private String[] meta; private int index; private int size; public ResultSet_File(String[] meta, String[][] data) { this.meta = meta; this.data = data; size = data.length; index = -1; public boolean next() throws SQLException{ index++; if(index == size) return false; return true; public String getstring(string columnname) throws SQLException{ int i = findindex(columnname); if(i > -1){ try{ return data[index][i]; catch(exception e){ throw new SQLException("Internal Error"); else{ return null; private final int findindex(string columnname){ for(int i = 0; i < meta.length; i++){ if(columnname.equals(meta[i])){ return i; return -1; public String getstring(int columnindex) throws SQLException{ return null; public ResultSetMetaData getmetadata() throws SQLException{ return new ResultSetMetaData_File(meta); ////////////////////////////////////////////////////////////////////////////// 150 FORCS Co., LTD

151 //. public boolean getboolean(string columnname) throws SQLException{ return false; public byte getbyte(string columnname) throws SQLException{ return -1; public short getshort(string columnname) throws SQLException{ return -1; public int getint(string columnname) throws SQLException{ return -1; public long getlong(string columnname) throws SQLException{ return -1; public float getfloat(string columnname) throws SQLException{ return -1; public double getdouble(string columnname) throws SQLException{ return -1; public BigDecimal getbigdecimal(string columnname) throws SQLException{ return null; public java.sql.date getdate(string columnname) throws SQLException{ return null; public java.sql.time gettime(string columnname) throws SQLException{ return null; public java.sql.timestamp gettimestamp(string columnname) throws SQLException{ return null; public Blob getblob(string columnname) throws SQLException{ return null; public Clob getclob(string columnname) throws SQLException{ return null; public java.io.inputstream getbinarystream(string columnname) throws SQLException{ return null; /////////////////////////////////////////////////////////////////////////////// public boolean getboolean(int columnindex) throws SQLException{return false; FORCS Co., LTD 151

152 OZ API Developer's Guide public byte getbyte(int columnindex) throws SQLException{return -1; public short getshort(int columnindex) throws SQLException{return -1; public int getint(int columnindex) throws SQLException{return -1; public long getlong(int columnindex) throws SQLException{return -1; public float getfloat(int columnindex) throws SQLException{return -1; public double getdouble(int columnindex) throws SQLException{return -1; public BigDecimal getbigdecimal(int columnindex) throws SQLException{return null; public java.sql.date getdate(int columnindex) throws SQLException{return null; public java.sql.time gettime(int columnindex) throws SQLException{return null; public java.sql.timestamp gettimestamp(int columnindex) throws SQLException{return null; public Blob getblob(int columnindex) throws SQLException{return null; public Clob getclob(int columnindex) throws SQLException{return null; public java.io.inputstream getbinarystream(int columnindex) throws SQLException{return null; /////////////////////////////////////////////////////////////////////////////// public void close() throws SQLException{ public boolean wasnull() throws SQLException{return false; public byte[] getbytes(int columnindex) throws SQLException{return null; public java.io.inputstream getasciistream(int columnindex) throws SQLException{ return null; public java.io.inputstream getunicodestream(int columnindex) throws SQLException{return null; public byte[] getbytes(string columnname) throws SQLException{return null; public java.io.inputstream getasciistream(string columnname) throws SQLException{return null; public java.io.inputstream getunicodestream(string columnname) throws SQLException{return null; public SQLWarning getwarnings() throws SQLException{return null; public void clearwarnings() throws SQLException{ public String getcursorname() throws SQLException{return null; public Object getobject(int columnindex) throws SQLException{return null; public Object getobject(string columnname) throws SQLException{return null; public int findcolumn(string columnname) throws SQLException{return -1; public java.io.reader getcharacterstream(int columnindex) throws SQLException{return null; public java.io.reader getcharacterstream(string columnname) throws SQLException{return null; public BigDecimal getbigdecimal(int columnindex, int scale) throws SQLException{return null; public BigDecimal getbigdecimal(string columnname, int scale) throws SQLException{return null; public boolean isbeforefirst() throws SQLException{return false; public boolean isafterlast() throws SQLException{return false; public boolean isfirst() throws SQLException{return false; 152 FORCS Co., LTD

153 public boolean islast() throws SQLException{return false; public void beforefirst() throws SQLException{ public void afterlast() throws SQLException{ public boolean first() throws SQLException{return false; public boolean last() throws SQLException{return false; public int getrow() throws SQLException{return -1; public boolean absolute( int row ) throws SQLException{return false; public boolean relative( int rows ) throws SQLException{return false; public boolean previous() throws SQLException{return false; public void setfetchdirection(int direction) throws SQLException{ public int getfetchdirection() throws SQLException{return -1; public void setfetchsize(int rows) throws SQLException{ public int getfetchsize() throws SQLException{return -1; public int gettype() throws SQLException{return -1; public int getconcurrency() throws SQLException{return -1; public boolean rowupdated() throws SQLException{return false; public boolean rowinserted() throws SQLException{return false; public boolean rowdeleted() throws SQLException{return false; public Statement getstatement() throws SQLException{return null; public Object getobject(int i, java.util.map map) throws SQLException{return null; public Ref getref(int i) throws SQLException{return null; public Array getarray(int i) throws SQLException{return null; public Object getobject(string colname, java.util.map map) throws SQLException{return null; public Ref getref(string colname) throws SQLException{return null; public Array getarray(string colname) throws SQLException{return null; public java.sql.date getdate(int columnindex, Calendar cal) throws SQLException{return null; public java.sql.date getdate(string columnname, Calendar cal) throws SQLException{return null; public java.sql.time gettime(int columnindex, Calendar cal) throws SQLException{return null; public java.sql.time gettime(string columnname, Calendar cal) throws SQLException{return null; public java.sql.timestamp gettimestamp(int columnindex, Calendar cal) throws SQLException{return null; public java.sql.timestamp gettimestamp(string columnname, Calendar cal) throws SQLException{return null; /////////////////////////////////////////////////////////////////////////////// public void updatenull(int columnindex) throws SQLException{ public void updateboolean(int columnindex, boolean x) throws SQLException{ public void updatebyte(int columnindex, byte x) throws SQLException{ public void updateshort(int columnindex, short x) throws SQLException{ public void updateint(int columnindex, int x) throws SQLException{ public void updatelong(int columnindex, long x) throws SQLException{ public void updatefloat(int columnindex, float x) throws SQLException{ public void updatedouble(int columnindex, double x) throws SQLException{ FORCS Co., LTD 153

154 OZ API Developer's Guide public void updatebigdecimal(int columnindex, BigDecimal x) throws SQLException{ public void updatestring(int columnindex, String x) throws SQLException{ public void updatebytes(int columnindex, byte x[]) throws SQLException{ public void updatedate(int columnindex, java.sql.date x) throws SQLException{ public void updatetime(int columnindex, java.sql.time x) throws SQLException{ public void updatetimestamp(int columnindex, java.sql.timestamp x) throws SQLException{ public void updateasciistream(int columnindex, java.io.inputstream x, int length) throws SQLException{ public void updatebinarystream(int columnindex, java.io.inputstream x, int length) throws SQLException{ public void updatecharacterstream(int columnindex, java.io.reader x, int length) throws SQLException{ public void updateobject(int columnindex, Object x, int scale) throws SQLException{ public void updateobject(int columnindex, Object x) throws SQLException{ public void updatenull(string columnname) throws SQLException{ public void updateboolean(string columnname, boolean x) throws SQLException{ public void updatebyte(string columnname, byte x) throws SQLException{ public void updateshort(string columnname, short x) throws SQLException{ public void updateint(string columnname, int x) throws SQLException{ public void updatelong(string columnname, long x) throws SQLException{ public void updatefloat(string columnname, float x) throws SQLException{ public void updatedouble(string columnname, double x) throws SQLException{ public void updatebigdecimal(string columnname, BigDecimal x) throws SQLException{ public void updatestring(string columnname, String x) throws SQLException{ public void updatebytes(string columnname, byte x[]) throws SQLException{ public void updatedate(string columnname, java.sql.date x) throws SQLException{ public void updatetime(string columnname, java.sql.time x) throws SQLException{ public void updatetimestamp(string columnname, java.sql.timestamp x) throws SQLException{ public void updateasciistream(string columnname, java.io.inputstream x, int length) throws SQLException{ public void updatebinarystream(string columnname, java.io.inputstream x, int length) throws SQLException{ public void updatecharacterstream(string columnname, java.io.reader reader, int length) throws SQLException{ public void updateobject(string columnname, Object x, int scale) throws SQLException{ public void updateobject(string columnname, Object x) throws SQLException{ public void insertrow() throws SQLException{ 154 FORCS Co., LTD

155 public void updaterow() throws SQLException{ public void deleterow() throws SQLException{ public void refreshrow() throws SQLException{ public void cancelrowupdates() throws SQLException{ public void movetoinsertrow() throws SQLException{ public void movetocurrentrow() throws SQLException{ ////////////////////////////////////////////////////////////////////////////// <ResultMetaData_File.java> import java.sql.resultsetmetadata; import java.sql.sqlexception; import java.sql.types; import java.util.*; public class ResultSetMetaData_File implements ResultSetMetaData{ String[] meta; public ResultSetMetaData_File(String[] meta) { this.meta = meta; public int getcolumncount() throws SQLException{ return meta.length; public String getcolumnname(int column) throws SQLException{ if(0 < column && column < getcolumncount()+1){ return meta[column-1]; else{ throw new SQLException(); public int getcolumntype(int column) throws SQLException{ return Types.VARCHAR; public int isnullable(int column) throws SQLException{return -1; public int getcolumndisplaysize(int column) throws SQLException{return -1; public int getprecision(int column) throws SQLException{return -1; public int getscale(int column) throws SQLException{return -1; public boolean isautoincrement(int column) throws SQLException{ return false; public boolean iscasesensitive(int column) throws SQLException{ return false; public boolean issearchable(int column) throws SQLException{return false; public boolean iscurrency(int column) throws SQLException{return false; public boolean issigned(int column) throws SQLException{return false; public boolean isreadonly(int column) throws SQLException{return false; public boolean iswritable(int column) throws SQLException{return false; public boolean isdefinitelywritable(int column) throws SQLException{ FORCS Co., LTD 155

156 OZ API Developer's Guide return false; public String getcolumnlabel(int column) throws SQLException{return null; public String getschemaname(int column) throws SQLException{return null; public String gettablename(int column) throws SQLException{return null; public String getcatalogname(int column) throws SQLException{return null; public String getcolumntypename(int column) throws SQLException{ return null; public String getcolumnclassname(int column) throws SQLException{ return null; 156 FORCS Co., LTD

157 User Security Logic UDS UDS UDS FORCS Co., LTD 157

158 OZ API Developer's Guide USL(User Security Logic). USL USL Server USL Client, I/O. USL Flow OZ Server Server Side Network I/O Module USL Server Module Request Response USL Client Module Client Side Network I/O Module OZ Viewer 158 FORCS Co., LTD

159 USL Web WAS Session Cookie ( ), Network I/O Stream, PKI. Session ( Session USL ) UseUserSecurityLogic=true OZ Server Server Side Network I/O Module WAS USL Server Module 4-2 USL Client 2. USL USL Client Module 4-3 Exception 1. Connection Request Client Side Network I/O Module <param name="connection.usingusl" value="true"> OZ Viewer <param name="connection.args1" value="session_name=oz_session"> FORCS Co., LTD 159

160 OZ API Developer's Guide USL. - USL : OZ_HOME/lib/ozsfw35.jar - USL : OZ_HOME/conf/uslmngr.properties - ozsfw35.jar CLASSPATH. - uslmngr.properties. <<uslmngr.properties>> # # use user security logic apply # UseUserSecurityLogicVer30=true # # default USL(Server&Client) class name (with package name) # OZDefault_SERVER= ozusl.defozuslserver OZDefault_CLIENT=DefOZUSLClient # # group level USL setting # %GROUP_NAME%_SERVER=%USLServer class name with package% # %GROUP_NAME%_CLIENT=%USLClient class name with package% # categoryname1_server=ozusl.category1ozserver categoryname1_client=category1ozclient category2_server=ozusl.category2ozserver category2_client=category2ozclient uslmngr.properties UseUserSecurityLogicVer30=true. 160 FORCS Co., LTD

161 . USL USL (DLL ). OZDefault_SERVER=USL OZDefault_CLIENT=USL DLL. PKI DLL.. Report_group_SERVER=USL Report_group_CLIENT=USL DLL :. OZ Viewer Tag <param name="connection.usingusl" value="true">. UseUserSecurityLogicVer30=true. HTML <<.html>> <html> <body> <object id="ozviewer" width="800" height="600" classid="clsid:64da633f-e73b bf CD53" <param name="viewer.namespace" value="activex30ozviewer"> <param name="connection.servlet" value="http:// :9080/oz/server"> <param name="connection.reportname" value="group1/test.xml"> <param name="viewer.configmode" value="html"> <param name="connection.usingusl" value="true"> <param name="connection.pcount" value="3"> <param name="connection.args1" value="session_name=oz_session"> <param name="connection.args2" value="fromdate= "> <param name="connection.args3" value="todate= "> </object> </body> </html> FORCS Co., LTD 161

162 OZ API Developer's Guide USL USL USL Request Stream Response Stream.. USL oz.cp.ozuslserver createsecureoutputstream(), createsecureinputstream(). Request Stream createsecureinputstream(). Response Stream createsecureoutputstream(). InputStream ( ) InputStream. java.io.inputstream read(). USL DataInputStream read() DataInputStream. read. OutputStream ( ) OutputStream. java.io.outputstream write(), flush(). USL DataOutputStream write DataOutputStream. write() flush 162 FORCS Co., LTD

163 DataOutputStream. flush. USL USL Request Stream USL Response Stream.. USL OZ USL DLL USL. createsecureoutputstream(), createsecureinputstream(). Request Stream createsecureoutputstream(). Response Stream createsecureinputstream(). USL createsecureoutputstream() OutputStream writeutf() writeint(). InputStream ( ) CJDataInputStream.. USL CJDataInputStream read() CJDataInputStream. read. OutputStream ( ) CJDataOutputStream. CJDataOutputStream FORCS Co., LTD 163

164 OZ API Developer's Guide. USL CJDataOutputStream CJDataOutputStream. write flush CJDataOutputStream. flush. USL USL WAS Valid. OZ_HOME/usl/sample/DefOZUSLServer. java, OZ USL DLL. DefOZUSLClient DLL. Server Side USL Module DefOZUSLServer OZUSLServer. DefOZUSLServer Client, WAS OZ Servlet.. createsecureinputstream getsecureoutput Stream. HttpSession,, DataOutputStream write(int b), close(), flush() DataOutputStream Byte ArrayOutputStream flush. <<DefOZUSLServer.java>> package ozusl; import java.io.*; import oz.cp.ozuslserver; import javax.servlet.http.httpsession; 164 FORCS Co., LTD

165 import oz.cp.message.ozcmexception; public class DefOZUSLServer extends OZUSLServer { String share_key_tag, share_key_value; public DefOZUSLServer() { class DefOZServerOutputStream extends OutputStream { ByteArrayOutputStream bout; DataOutputStream out_org=null; int b_length=0; public DefOZServerOutputStream(HttpSession _http_session, String _report_name, DataOutputStream _out_org) throws OzcmException { share_key_value = (String)_http_session.getValue(share_key_tag); if(share_key_value==null) throw new OzcmException("session was not found"); bout = new ByteArrayOutputStream(); out_org = _out_org; public void write(int b) throws IOException { bout.write(b); b_length++; public void close() throws IOException { public void flush() throws IOException { byte[] b_org = bout.tobytearray(); System.out.println("bout.reset();"); bout.reset(); out_org.writeint(b_org.length); out_org.write(b_org, 0, b_org.length); out_org.flush(); FORCS Co., LTD 165

166 OZ API Developer's Guide public InputStream createsecureinputstream(datainputstream org_in) { try { share_key_tag = org_in.readutf(); catch(exception e) { share_key_tag = null; System.out.println("\nDefOZUSLServer: can't get share_key! check USL configuration for " + report_name); e.printstacktrace(); return null; public OutputStream createsecureoutputstream(dataoutputstream out_org) throws OzcmException { return new DefOZServerOutputStream(http_session, report_name, out_org); Servlet WAS /oz (Servlet). WEB- INF WEB-INF\sessions., /http://localhost:8100/test/getcookie.jsp WAS /oz, OZ. WAS. Process /oz. 166 FORCS Co., LTD

167 Cookie. Client Side USL Module DefOZUSLClient OZUSLClient., USL connection.usingusl true USL USL DefOZUSLServer. createsecureinputstream getsecureoutput Stream. createsecureoutputstream "session_name" DataOutputStream. createsecureinputstream InputStream. << Tag>> <html> <body> <<object id="ozviewer" width="800" height="600" classid="clsid:64da633f-e73b BF CD53" <param name="viewer.namespace" value="activex30\ozviewer"> <param name="connection.servlet" value="http:// :9080/oz/server"> <param name="connection.reportname" value="group1/test.xml"> <param name="viewer.configmode" value="html"> <param name="connection.usingusl" value="true"> <param name="connection.pcount" value="3"> <param name="connection.args1" value="session_name=oz_session"> <param name="connection.args2" value="fromdate= "> <param name="connection.args3" value="todate= "> </object> </body> </html> <<USLClient.cpp>> // USLClient.cpp: implementation of the CUSLClient class. // ////////////////////////////////////////////////////////////////////// #include <stdafx.h> #include <ozuslclient/ozuslclient.h> #include <ozuslclient/uslclient.h> #include <ozuslclient/jusldatainputstream.h> #include <ozuslclient/jusldataoutputstream.h> #ifdef _DEBUG #undef THIS_FILE FORCS Co., LTD 167

168 OZ API Developer's Guide static char THIS_FILE[]= FILE ; #define new DEBUG_NEW #endif ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// CUSLClient::CUSLClient() { m_str_ip = _T(""); m_str_url = _T(""); m_parameters = NULL; CUSLClient::~CUSLClient() { void CUSLClient::SetServerIP(CString str_ip) { m_str_ip = str_ip; void CUSLClient::SetServerURL(CString str_url) { m_str_url = str_url; void CUSLClient::SetParameter(Parameter * parameters) { m_parameters = parameters; CJDataInputStream * CUSLClient::GetSecuredInputStream(CJDataInputStream *pin) { return new CJUSLDataInputStream(pIn,TRUE, m_str_pub_key_path); CJDataOutputStream * CUSLClient::GetSecuredOutputStream (CJDataOutputStream *pout) { CJUSLDataOutputStream out(pout,false, m_parameters); out.writesessionkeytoserver(); return pout; <<JUSLDataInputStream.cpp>> // JUSLDataInputStream.cpp: implementation of the CJUSLDataInputStream class. 168 FORCS Co., LTD

169 ////////////////////////////////////////////////////////////////////// #include "stdafx.h" #include "JUSLDataInputStream.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = FILE ; #endif _DEBUG ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// CJUSLDataInputStream::CJUSLDataInputStream(CJDataInputStream *pin, BOOL _isshoulddelete, CString str_pub_key) : CJDataInputStream(pIn, _isshoulddelete) { try{ Jint jsize = pin->readint(); CJArray<Jbyte>* arraybuffer; char * buf = new char[2048]; int readsize = -1; CJByteArrayOutputStream bout; try{ while(true) { readsize = pin->read(buf,0,2048); if (readsize ==0) break; bout.write(buf,0,readsize); arraybuffer = bout.tobytearray(); in->close(); delete buf; catch(czexception *eof){ throw eof; m_pin = new CJDataInputStream (new CJByteArrayInputStream(arrayBuffer->getBuffer(), 0, arraybuffer->length(), TRUE), TRUE); in = m_pin; delete arraybuffer; catch(czexception * ex){ throw ex; FORCS Co., LTD 169

170 OZ API Developer's Guide CJUSLDataInputStream::~CJUSLDataInputStream() { void CJUSLDataInputStream::GetBytes (const CString str, byte* b, int len) { for (int i = 0 ; i < len ; i++) { b[i] =str.getat (i); Jint CJUSLDataInputStream::available() { return m_pin->available(); Jbyte CJUSLDataInputStream::readByte()//throw (CJIOException *) { return m_pin->readbyte(); Jlong CJUSLDataInputStream::readLong()//throw (CJIOException *) { return m_pin->readlong(); Jdouble CJUSLDataInputStream::readDouble()//throw (CJIOException *) { return m_pin->readdouble(); Jfloat CJUSLDataInputStream::readFloat()//throw (CJIOException *) { return m_pin->readfloat(); Jboolean CJUSLDataInputStream::readBoolean()//throw (CJIOException *) { return m_pin->readboolean(); Jshort CJUSLDataInputStream::readShort()//throw (CJIOException *) { return m_pin->readshort(); 170 FORCS Co., LTD

171 Jchar CJUSLDataInputStream::readChar()//throw (CJIOException *) { return m_pin->readchar(); Jint CJUSLDataInputStream::readInt()//throw (CJIOException *) { return m_pin->readint(); CString CJUSLDataInputStream::readUTF()//throw (CJIOException *) { return m_pin->readutf(); CString CJUSLDataInputStream::readString()//throw (CJIOException *) { return m_pin->readstring(); Jint CJUSLDataInputStream::read(CJArray<Jbyte> &b)//throw (CJIOException *) { return m_pin->read(b); Jint CJUSLDataInputStream::read(CJArray<Jbyte> &b, Jint off, Jint len) //throw (CJIOException *) { return m_pin->read(b, off, len); int CJUSLDataInputStream::getRemainSize() { return m_pin->getremainsize(); Jbyte * CJUSLDataInputStream::getBufferPointer() { return m_pin->getbufferpointer(); <<JUSLDataOutputStream.cpp>> // JUSLDataOutputStream.cpp: implementation of the CJUSLDataOutputStream class. // ////////////////////////////////////////////////////////////////////// #include "stdafx.h" FORCS Co., LTD 171

172 OZ API Developer's Guide #include "JUSLDataOutputStream.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = FILE ; #endif _DEBUG ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// CJUSLDataOutputStream::CJUSLDataOutputStream(CJDataOutputStream *pout, BOOL _isshoulddelete, Parameter *parameter) : CJDataOutputStream(pOut, _isshoulddelete) { m_pout = pout; m_parameter = parameter; CJUSLDataOutputStream::~CJUSLDataOutputStream() { void CJUSLDataOutputStream::WriteSessionKeyToServer() { try{ BOOL b = TRUE; for (int i=0; i<m_parameter->getsize(); i++) { // Read session key from viewer's parameter to wriete this information to //. if(m_parameter->elementat(i).name.comparenocase(_t("session_name")) == 0){ m_pout->writeutf(m_parameter->elementat(i).value); b=false; catch(czexception * e){ throw e; 172 FORCS Co., LTD

173 PKI USL PKI. USL PKI.. Output Stream write(), flush(), flush().., PKI. package ozusl; import java.io.*; import oz.cp.ozuslserver; import javax.servlet.http.httpsession; import java.security.*; import java.security.spec.*; import oz.cp.message.ozcmexception; import pki.lib.*; // PKI import public class PKIUSLServer extends OZUSLServer { protected String share_key_tag = null; protected String share_key_value = null; protected Secure _secu = null; protected EnvelopedMessage _se = null; public PKIUSLServer() { class PKIUSLServerOutputStream extends OutputStream { ByteArrayOutputStream bout; DataOutputStream out_org = null; int b_length = 0; FORCS Co., LTD 173

174 OZ API Developer's Guide public PKIUSLServerOutputStream(HttpSession _http_session, String _report_name, DataOutputStream _out_org) throws OzcmException { ////////////////////// Session ////////////////////// share_key_value = (String)_http_session.getValue(share_key_tag); if (share_key_value==null) throw new OzcmException("session was not found"); /////////////////////////////////////////// bout = new ByteArrayOutputStream(); out_org = _out_org; public void write(int b) throws IOException { bout.write(b); b_length++; public void close() throws IOException { public void flush() throws IOException { try{ ///////////////////// ////////////////////// _secu = Secure.getInstance(); _se = new EnvelopedMessage( _secu); String dummy=_se.encryptinit(secu.web, secu.km, share_key_value); bout.flush(); byte[] b_org = bout.tobytearray(); byte[] encrypt_base64 = _se.encryptupdate(b_org).getbytes(); /////////////////////////////////////// out_org.writeint(encrypt_base64.length); out_org.write(encrypt_base64, 0, encrypt_base64.length); out_org.flush(); catch(exception e){ e.printstacktrace(); throw new IOException("PKI: error... " + e.tostring()); public InputStream createsecureinputstream(datainputstream org_in) throws OzcmException { try{ 174 FORCS Co., LTD

175 share_key_tag = org_in.readutf(); if(share_key_tag.equals("param is null") share_key_tag.equals("") share_key_tag==null) share_key_tag="session_id"; catch(exception e){ share_key_tag = null; e.printstacktrace(); throw new OzcmException( "PKI: can't get share_key! check USL configuration for " + report_name); return null; public OutputStream createsecureoutputstream(dataoutputstream out_org) throws OzcmException { return new AAUSLServerOutputStream(http_session, report_name, out_org); USL USL PKI COM. CJDataInputStream.. <<USLClient.cpp>> // USLClient.cpp: implementation of the CUSLClient class. // ////////////////////////////////////////////////////////////////////// #include <stdafx.h> #include <ozuslclient/ozuslclient.h> #include <ozuslclient/uslclient.h> #include <ozuslclient/axmofe.h> #include <ozuslclient/jusldatainputstream.h> #include <ozuslclient/jusldataoutputstream.h> #ifdef _DEBUG #undef THIS_FILE static char THIS_FILE[]= FILE ; #define new DEBUG_NEW #endif ////////////////////////////////////////////////////////////////////// // Construction/Destruction FORCS Co., LTD 175

176 OZ API Developer's Guide ////////////////////////////////////////////////////////////////////// CUSLClient::CUSLClient() { m_str_ip = _T(""); m_str_url = _T(""); m_str_pub_key_path = _T(""); m_parameters = NULL; CUSLClient::~CUSLClient() { void CUSLClient::SetServerIP(CString str_ip) { m_str_ip = str_ip; void CUSLClient::SetServerURL(CString str_url) { m_str_url = str_url; void CUSLClient::SetParameter(Parameter * parameters) { m_parameters = parameters; CJDataInputStream * CUSLClient::GetSecuredInputStream(CJDataInputStream *pin) { return new CJUSLDataInputStream(pIn,TRUE, m_str_pub_key_path); CJDataOutputStream * CUSLClient::GetSecuredOutputStream( CJDataOutputStream *pout) { CJUSLDataOutputStream out(pout,false, m_parameters); out.writesessionkeytoserver(); m_str_pub_key_path = out.getpublickeypath(); return pout; <<JUSLDataInputStream.cpp>> // JUSLDataInputStream.cpp: implementation of the CJUSLDataInputStream class. // ////////////////////////////////////////////////////////////////////// #include "stdafx.h" 176 FORCS Co., LTD

177 #include "JUSLDataInputStream.h" #include <ozuslclient/axmofe.h> #include <ozuslclient/base64.h> #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = FILE ; #endif _DEBUG ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// CJUSLDataInputStream::CJUSLDataInputStream(CJDataInputStream *pin, BOOL _isshoulddelete, CString str_pub_key) : CJDataInputStream(pIn, _isshoulddelete) { try{ Jint jsize = pin->readint(); //byte* b_org = new byte[size]; CJArray<Jbyte>* arraybuffer; char * buf = new char[2048]; int readsize = -1; CJByteArrayOutputStream bout; try{ while(true ) { readsize = pin->read(buf,0,2048); if (readsize ==0) break; bout.write(buf,0,readsize); arraybuffer = bout.tobytearrayforsign(); in->close(); delete buf; catch(czexception *eof){ throw eof; IAxMOFE_NCA pki; if(!pki.createdispatch(_t("axmofe.axmofe_nca.1"), NULL)) { char * tmp = arraybuffer->getbuffer(); int ssize = arraybuffer->length(); CString decrypt_base64 = pki.symmdecryptdataex(tmp, pki.readdatafile(str_pub_key), _T("SEED")); FORCS Co., LTD 177

178 OZ API Developer's Guide byte* tmpbyte2 = new byte[decrypt_base64.getlength()]; int dsie = decrypt_base64.getlength(); int size = 0; CTP_Base64Decode((unsigned char*) decrypt_base64.getbuffer(decrypt_base64.getlength()), tmpbyte2, &size); m_pin = new CJDataInputStream(new CJByteArrayInputStream((char*)tmpByte2,0,size, TRUE), TRUE); in = m_pin; delete arraybuffer; catch(czexception * ex){ throw ex; CJUSLDataInputStream::~CJUSLDataInputStream() { /* if(m_pin) { m_pin->close(); delete m_pin; */ void CJUSLDataInputStream::GetBytes (const CString str, byte* b, int len) { for (int i = 0 ; i < len ; i++) { b[i] =str.getat (i); Jint CJUSLDataInputStream::available() { return m_pin->available(); Jbyte CJUSLDataInputStream::readByte()//throw (CJIOException *) { return m_pin->readbyte(); 178 FORCS Co., LTD

179 Jlong CJUSLDataInputStream::readLong()//throw (CJIOException *) { return m_pin->readlong(); Jdouble CJUSLDataInputStream::readDouble()//throw (CJIOException *) { return m_pin->readdouble(); Jfloat CJUSLDataInputStream::readFloat()//throw (CJIOException *) { return m_pin->readfloat(); Jboolean CJUSLDataInputStream::readBoolean()//throw (CJIOException *) { return m_pin->readboolean(); Jshort CJUSLDataInputStream::readShort()//throw (CJIOException *) { return m_pin->readshort(); Jchar CJUSLDataInputStream::readChar()//throw (CJIOException *) { return m_pin->readchar(); Jint CJUSLDataInputStream::readInt()//throw (CJIOException *) { return m_pin->readint(); CString CJUSLDataInputStream::readUTF()//throw (CJIOException *) { return m_pin->readutf(); CString CJUSLDataInputStream::readString()//throw (CJIOException *) { return m_pin->readstring(); Jint CJUSLDataInputStream::read(CJArray<Jbyte> &b)//throw (CJIOException *) { return m_pin->read(b); FORCS Co., LTD 179

180 OZ API Developer's Guide Jint CJUSLDataInputStream::read(CJArray<Jbyte> &b, Jint off, Jint len) //throw (CJIOException *) { return m_pin->read(b, off, len); int CJUSLDataInputStream::getRemainSize() { return m_pin->getremainsize(); Jbyte * CJUSLDataInputStream::getBufferPointer() { return m_pin->getbufferpointer(); <<JUSLDataOutputStream.cpp>> // JUSLDataOutputStream.cpp: implementation of the CJUSLDataOutputStream class. ////////////////////////////////////////////////////////////////////// #include "stdafx.h" #include "JUSLDataOutputStream.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = FILE ; #endif _DEBUG ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// CJUSLDataOutputStream::CJUSLDataOutputStream(CJDataOutputStream *pout, BOOL _isshoulddelete, Parameter *parameter) : CJDataOutputStream(pOut, _isshoulddelete) { m_pout = pout; m_parameter = parameter; m_str_pub_key_path = _T(""); CJUSLDataOutputStream::~CJUSLDataOutputStream() { void CJUSLDataOutputStream::WriteSessionKeyToServer() 180 FORCS Co., LTD

181 { try{ BOOL b = TRUE; for (int i=0; i<m_parameter->getsize(); i++) { // Read session key from viewer's parameter to wriete this information to // if(m_parameter->elementat(i).name.comparenocase(_t("session_name")) == 0){ m_pout->writeutf(m_parameter->elementat(i).value); b=false; //Read ksign's key path to decode the ecoded data from if (m_parameter->elementat(i).name.comparenocase(_t("ksign_path")) == 0) { m_str_pub_key_path = m_parameter->elementat(i).value; catch(czexception * e){ throw e; CString CJUSLDataOutputStream::GetPublicKeyPath() { return m_str_pub_key_path; PKI PKI ActiveX. PKI ActiveX byte[]. String PKI String. byte[] byte[]. String base64.. Client PKI ActiveX PC ActiveX. VJ++ COM Wrapper PKI. FORCS Co., LTD 181

182 OZ API Developer's Guide PKI Import USL. 182 FORCS Co., LTD

자바 프로그래밍

자바 프로그래밍 5 (kkman@mail.sangji.ac.kr) (Class), (template) (Object) public, final, abstract [modifier] class ClassName { // // (, ) Class Circle { int radius, color ; int x, y ; float getarea() { return 3.14159

More information

untitled

untitled OZ Framework Manual OZ Framework... 2 POST... 3 DataModule POST... 3 FXDataModule POST Custom... 5 Servlet API (for OZ Java Server)... 12 DataModuleFactory... 12 DataModule... 13 FXDataModule... 19...

More information

FileMaker ODBC and JDBC Guide

FileMaker ODBC and JDBC Guide FileMaker 13 5 5 5 6 6 6 7 7 8 8 8 8 9 9 10 10 11 11 12 12 12 12 12 12 13 13 14 14 16 16 18 4 19 19 20 20 21 21 21 23 23 23 23 25 26 26 26 26 27 28 28 28 28 29 31 31 32 33 33 33 33 34 34 35 35 35 36 1

More information

FileMaker ODBC and JDBC Guide

FileMaker ODBC and JDBC Guide FileMaker 14 5 5 5 5 6 6 6 7 7 7 8 8 8 9 9 10 10 11 11 12 12 12 12 12 13 13 14 15 16 17 18 18 19 19 20 20 20 21 21 21 22 22 22 22 23 24 24 24 24 25 27 27 28 29 29 29 29 30 30 31 31 31 32 1 1 1 1 1 1 1

More information

untitled

untitled - -, (insert) (delete) - - (insert) (delete) (top ) - - (insert) (rear) (delete) (front) A A B top A B C top push(a) push(b) push(c) A B top pop() top A B D push(d) top #define MAX_STACK_SIZE 100 int

More information

07 자바의 다양한 클래스.key

07 자바의 다양한 클래스.key [ 07 ] . java.lang Object, Math, String, StringBuffer Byte, Short, Integer, Long, Float, Double, Boolean, Character. java.util Random, StringTokenizer Calendar, GregorianCalendar, Date. Collection, List,

More information

비긴쿡-자바 00앞부속

비긴쿡-자바 00앞부속 IT COOKBOOK 14 Java P r e f a c e Stay HungryStay Foolish 3D 15 C 3 16 Stay HungryStay Foolish CEO 2005 L e c t u r e S c h e d u l e 1 14 PPT API C A b o u t T h i s B o o k IT CookBook for Beginner Chapter

More information

11 템플릿적용 - Java Program Performance Tuning (김명호기술이사)

11 템플릿적용 - Java Program Performance Tuning (김명호기술이사) Java Program Performance Tuning ( ) n (Primes0) static List primes(int n) { List primes = new ArrayList(n); outer: for (int candidate = 2; n > 0; candidate++) { Iterator iter = primes.iterator(); while

More information

슬라이드 1

슬라이드 1 UNIT 16 예외처리 로봇 SW 교육원 3 기 최상훈 학습목표 2 예외처리구문 try-catch-finally 문을사용핛수있다. 프로그램오류 3 프로그램오류의종류 컴파일에러 (compile-time error) : 컴파일실행시발생 럮타임에러 (runtime error) : 프로그램실행시발생 에러 (error) 프로그램코드에의해서해결될수없는심각핚오류 ex)

More information

Microsoft PowerPoint - 18-DataSource.ppt

Microsoft PowerPoint - 18-DataSource.ppt 18 장 : JDBC DataSource DataSource JDBC 2.0의 javax.sql 패키지에포함되어도입됨 DataSource 인터페이스는데이터베이스커넥션을만들거나사용하는데좀더유연한아키텍처를제공하기위해도입됨 DataSource를이용할경우, 클라이언트코드는한줄도바꾸지않고서도다른데이터베이스에접속할수있도록해줌 즉 DataSource 는커넥션상세사항들을캡슐화

More information

ilist.add(new Integer(1))과 같이 사용하지 않고 ilist.add(1)과 같이 사용한 것은 자바 5.0에 추가된 기본 자료형과 해당 객체 자료 형과의 오토박싱/언박싱 기능을 사용한 것으로 오토박싱이란 자바 컴파일러가 객체를 요구하는 곳에 기본 자료형

ilist.add(new Integer(1))과 같이 사용하지 않고 ilist.add(1)과 같이 사용한 것은 자바 5.0에 추가된 기본 자료형과 해당 객체 자료 형과의 오토박싱/언박싱 기능을 사용한 것으로 오토박싱이란 자바 컴파일러가 객체를 요구하는 곳에 기본 자료형 바에 제네릭스(generics)를 도입하기 위한 연구는 이미 8년 전인 1996년부터라고 한다. 실제로 자바에 제네릭스를 도입하 는 몇 가지 방안들이 논문으로 나오기 시작한 것이 1998년 초임을 감 안하면 무려 8년이 지난 후에야 자바 5.0에 전격 채택되었다는 것은 이것이 얼마나 어려운 일이었나 하는 것을 보여준다. 자바의 스펙을 결정하는 표준화 절차인

More information

5장.key

5장.key JAVA Programming 1 (inheritance) 2!,!! 4 3 4!!!! 5 public class Person {... public class Student extends Person { // Person Student... public class StudentWorker extends Student { // Student StudentWorker...!

More information

Java ...

Java ... 컴퓨터언어 1 Java 제어문 조성일 조건문 : if, switch 어떠한조건을조사하여각기다른명령을실행 if 문, switch 문 if 문 if - else 문형식 if 문형식 if ( 조건식 ) { 명령문 1; 명령문 2;... if ( 조건식 ) { 명령문 1; 명령문 2;... else { 명령문 a; 명령문 b;... 예제 1 정수를입력받아짝수와홀수를판별하는프로그램을작성하시오.

More information

목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper 클래스작성 - JSONParser 클래스작성 공공

목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper 클래스작성 - JSONParser 클래스작성 공공 메신저의새로운혁신 채팅로봇 챗봇 (Chatbot) 입문하기 소 이 메 속 : 시엠아이코리아 름 : 임채문 일 : soulgx@naver.com 1 목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper

More information

Java ~ Java program: main() class class» public static void main(string args[])» First.java (main class ) /* The first simple program */ public class

Java ~ Java program: main() class class» public static void main(string args[])» First.java (main class ) /* The first simple program */ public class Linux JAVA 1. http://java.sun.com/j2se/1.4.2/download.html J2SE 1.4.2 SDK 2. Linux RPM ( 9 ) 3. sh j2sdk-1_4_2_07-linux-i586-rpm.bin 4. rpm Uvh j2sdk-1_4_2_07-linux-i586-rpm 5. PATH JAVA 1. vi.bash_profile

More information

KYO_SCCD.PDF

KYO_SCCD.PDF 1. Servlets. 5 1 Servlet Model. 5 1.1 Http Method : HttpServlet abstract class. 5 1.2 Http Method. 5 1.3 Parameter, Header. 5 1.4 Response 6 1.5 Redirect 6 1.6 Three Web Scopes : Request, Session, Context

More information

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770> i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,

More information

User's Guide Manual

User's Guide Manual 1. 롯데 통합구매 시스템 사용자 매뉴얼 (공급사용) 2006.01-1 - 문서 이력(Revision History) Date Version Description Author(s) 2006/01 V1.0 사용자 매뉴얼 - 공급사용 롯데CFD 주) 이 사용자 안내서의 내용과 롯데 통합구매 시스템은 저작권법과 컴퓨터 프로그램 보호법으로 보호 받고 있으며, 롯데CFD의

More information

2

2 2013 Devsisters Corp. 2 3 4 5 6 7 8 >>> import boto >>> import time >>> s3 = boto.connect_s3() # Create a new bucket. Buckets must have a globally unique name >>> bucket = s3.create_bucket('kgc-demo')

More information

Mars OS 1.0.2 System Administration Guide

Mars OS 1.0.2 System Administration Guide Mars OS 1.0.2 시스템 관리 가이드 NetApp, Inc. www.netapp.com/kr 부품 번호:215-09731_A0 2015년 2월 4일 수요일 2 목차 목차 Mars OS 정보 12 Mars OS의 기능 13 고성능 13 업계 최고의 스토리지 효율성 13 시스템 모니터링 13 비휘발성 메모리를 사용하여 안정성 및 성능 향상 13 클러스터링

More information

예제 2) Test.java class A intvar= 10; void method() class B extends A intvar= 20; 1"); void method() 2"); void method1() public class Test 3"); args) A

예제 2) Test.java class A intvar= 10; void method() class B extends A intvar= 20; 1); void method() 2); void method1() public class Test 3); args) A 제 10 장상속 예제 1) ConstructorTest.java class Parent public Parent() super - default"); public Parent(int i) this("hello"); super(int) constructor" + i); public Parent(char c) this(); super(char) constructor

More information

시스코 무선랜 설치운영 매뉴얼(AP1200s_v1.1)

시스코 무선랜 설치운영 매뉴얼(AP1200s_v1.1) [ Version 1.3 ] Access Point,. Access Point IP 10.0.0.1, Subnet Mask 255.255.255.224, DHCP Client. DHCP Server IP IP,, IP 10.0.0.X. (Tip: Auto Sensing Straight, Cross-over.) step 1]. step 2] LAN. step

More information

OPCTalk for Hitachi Ethernet 1 2. Path. DCOMwindow NT/2000 network server. Winsock update win95. . . 3 Excel CSV. Update Background Thread Client Command Queue Size Client Dynamic Scan Block Block

More information

* Factory class for query and DML clause creation * tiwe * */ public class JPAQueryFactory implements JPQLQueryFactory private f

* Factory class for query and DML clause creation * tiwe * */ public class JPAQueryFactory implements JPQLQueryFactory private f JPA 에서 QueryDSL 사용하기위해 JPAQuery 인스턴스생성방법 http://ojc.asia, http://ojcedu.com 1. JPAQuery 를직접생성하기 JPAQuery 인스턴스생성하기 QueryDSL의 JPAQuery API를사용하려면 JPAQuery 인스턴스를생성하면된다. // entitymanager는 JPA의 EntityManage

More information

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수 사용 설명서 TeraStation Pro II TS-HTGL/R5 패키지 내용물: 본체 (TeraStation) 이더넷 케이블 전원 케이블 TeraNavigator 설치 CD 사용 설명서 (이 설명서) 제품 보증서 www.buffalotech.com 소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를

More information

PCServerMgmt7

PCServerMgmt7 Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network

More information

제목을 입력하세요.

제목을 입력하세요. 1. 4 1.1. SQLGate for Oracle? 4 1.2. 4 1.3. 5 1.4. 7 2. SQLGate for Oracle 9 2.1. 9 2.2. 10 2.3. 10 2.4. 13 3. SQLGate for Oracle 15 3.1. Connection 15 Connect 15 Multi Connect 17 Disconnect 18 3.2. Query

More information

BEef 사용법.pages

BEef 사용법.pages 1.... 3 2.... 3 (1)... 3 (2)... 5 3. BeEF... 7 (1) BeEF... 7 (2)... 8 (3) (Google Phishing)... 10 4. ( )... 13 (1)... 14 (2) Social Engineering... 17 (3)... 19 (4)... 21 5.... 22 (1)... 22 (2)... 27 (3)

More information

³»Áö¼öÁ¤

³»Áö¼öÁ¤ Active Directory Active Directory Active Directory Active Directory m Active Directory m Active Directory m Active Directory m Active Directory m Active Directory m Active Directory m Active

More information

Microsoft Word - FS_ZigBee_Manual_V1.3.docx

Microsoft Word - FS_ZigBee_Manual_V1.3.docx FirmSYS Zigbee etworks Kit User Manual FS-ZK500 Rev. 2008/05 Page 1 of 26 Version 1.3 목 차 1. 제품구성... 3 2. 개요... 4 3. 네트워크 설명... 5 4. 호스트/노드 설명... 6 네트워크 구성... 6 5. 모바일 태그 설명... 8 6. 프로토콜 설명... 9 프로토콜 목록...

More information

Microsoft PowerPoint - User Manual-100 - 20150521.pptx

Microsoft PowerPoint - User Manual-100 - 20150521.pptx CIC-100 사용 설명서 (User Manual) 나의 커뮤니티, 보는 이야기 TocView [모델명 : CIC-100] 주의사항 매뉴얼의 내용은 서비스 향상을 위하여 개별 사용자의 사전 동의 또는 별도의 공지 없이 변경될 수 있습니다. 사용자의 인터넷 환경에 따라 제품 성능 및 기능의 제작 또는 사용이 불가능할 수 있습니다. 본 제품의 이용 중 장애에 의하여

More information

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx 과목명: 웹프로그래밍응용 교재: 모던웹을 위한 JavaScript Jquery 입문, 한빛미디어 Part3. Ajax Ch19. node.js 기본 2014년 1학기 Professor Seung-Hoon Choi 19 node.js 기본 이 책에서는 서버 구현 시 node.js 를 사용함 자바스크립트로 서버를 개발 다른서버구현기술 ASP.NET, ASP.NET

More information

Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인 웹 확장 아키텍처는 높은 수준의 안정성을 보장하기 위해 복잡한 솔루션으로 구현

Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인 웹 확장 아키텍처는 높은 수준의 안정성을 보장하기 위해 복잡한 솔루션으로 구현 02 Web Application Hosting in the AWS Cloud www.wisen.co.kr Wisely Combine the Network platforms Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인

More information

Microsoft PowerPoint - CoolMessenger_제안서_라이트_200508

Microsoft PowerPoint - CoolMessenger_제안서_라이트_200508 2005 Aug 0 Table of Contents 1. 제안 개요 P.2 2. 쿨메신저 소개 P.7 3. VoIP 인터넷전화 서비스 P.23 4. 쿨메신저 레퍼런스 사이트 P.32 5. 지란지교소프트 소개 P.37 1 芝 蘭 之 交 2 1. 제안 개요 1) Summery 3 1. 제안 개요 2) 일반 메신저 vs 쿨메신저 보안 문제 기업 정보 & 기밀 유출로

More information

untitled

untitled CAN BUS RS232 Line CAN H/W FIFO RS232 FIFO CAN S/W FIFO TERMINAL Emulator COMMAND Interpreter PROTOCOL Converter CAN2RS232 Converter Block Diagram > +- syntax

More information

특허청구의 범위 청구항 1 회선 아이디 접속 시스템에 있어서, 온라인을 통해 실제 사용자 고유정보의 발급이 가능한 아이디 발급 사이트를 제공하기 위한 아이디 발급 수단; 오프라인을 통한 사용자의 회선 아이디 청약에 따라 가상의 사용자 고유정보 및 가인증 정보를 생성하고

특허청구의 범위 청구항 1 회선 아이디 접속 시스템에 있어서, 온라인을 통해 실제 사용자 고유정보의 발급이 가능한 아이디 발급 사이트를 제공하기 위한 아이디 발급 수단; 오프라인을 통한 사용자의 회선 아이디 청약에 따라 가상의 사용자 고유정보 및 가인증 정보를 생성하고 (19) 대한민국특허청(KR) (12) 공개특허공보(A) (11) 공개번호 10-2010-0070878 (43) 공개일자 2010년06월28일 (51) Int. Cl. G06F 21/20 (2006.01) G06Q 40/00 (2006.01) (21) 출원번호 10-2008-0129613 (22) 출원일자 2008년12월18일 심사청구일자 없음 전체 청구항

More information

歯NetworkKawuiBawuiBo.PDF

歯NetworkKawuiBawuiBo.PDF (2000 12 Jr.) from Yongwoo s Park Java Network KawuiBawuiBo Game Programming from Yongwoo s Park 1 Java Network KawuiBawuiBo Game Programming from Yongwoo s Park 2 1. /... 4 1.1 /...4 1.2 /...6 1.3...7

More information

Microsoft Word - Automap3

Microsoft Word - Automap3 사 용 설 명 서 본 설명서는 뮤직메트로에서 제공합니다. 순 서 소개 -------------------------------------------------------------------------------------------------------------------------------------------- 3 제품 등록 --------------------------------------------------------------------------------------------------------------------------------------

More information

Microsoft PowerPoint - Smart CRM v4.0_TM 소개_20160320.pptx

Microsoft PowerPoint - Smart CRM v4.0_TM 소개_20160320.pptx (보험TM) 소개서 2015.12 대표전화 : 070 ) 7405 1700 팩스 : 02 ) 6012 1784 홈 페이지 : http://www.itfact.co.kr 목 차 01. Framework 02. Application 03. 회사 소개 01. Framework 1) Architecture Server Framework Client Framework

More information

개발문서 Oracle - Clob

개발문서 Oracle - Clob 개발문서 ORACLE CLOB 2008.6.9 ( 주 ) 아이캔매니지먼트 개발팀황순규 0. clob개요 1. lob과 long의비교와 clob와 blob 2. 테이블생성쿼리 ( 차이점-추가사항 ) 3. select 쿼리 4. insert 쿼리및 jdbc프로그래밍 5. update 쿼리및 jdbc프로그래밍 (4, 5). putclobdata() 클래스 6. select

More information

Mstage.PDF

Mstage.PDF Wap Push June, 2001 Contents About Mstage What is the Wap Push? SMS vs. Push Wap push Operation Wap push Architecture Wap push Wap push Wap push Example Company Outline : (Mstage co., Ltd.) : : 1999.5

More information

1

1 A Leader of Enterprise e-business Solution FORCS Co., LTD 1 WAS WebSphere SilverStream Apache Jserv Tomcat Resin Inprise Application Server BES Oracel OC4J(ORION) HPAS(Bluestone)8 JRun EAServer JEUS 3.0

More information

FileMaker 15 WebDirect 설명서

FileMaker 15 WebDirect 설명서 FileMaker 15 WebDirect 2013-2016 FileMaker, Inc.. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker FileMaker Go FileMaker, Inc.. FileMaker WebDirect FileMaker, Inc... FileMaker.

More information

untitled

untitled Memory leak Resource 力 金 3-tier 見 Out of Memory( 不 ) Memory leak( 漏 ) 狀 Application Server Crash 理 Server 狀 Crash 類 JVM 說 例 行說 說 Memory leak Resource Out of Memory Memory leak Out of Memory 不論 Java heap

More information

컴퓨터과학과 교육목표 컴퓨터과학과의 컴퓨터과학 프로그램은 해당분야 에서 학문적 기술을 창의적으로 연구하고 산업적 기술을 주도적으로 개발하는 우수한 인력을 양성 함과 동시에 직업적 도덕적 책임의식을 갖는 IT인 육성을 교육목표로 한다. 1. 전공 기본 지식을 체계적으로

컴퓨터과학과 교육목표 컴퓨터과학과의 컴퓨터과학 프로그램은 해당분야 에서 학문적 기술을 창의적으로 연구하고 산업적 기술을 주도적으로 개발하는 우수한 인력을 양성 함과 동시에 직업적 도덕적 책임의식을 갖는 IT인 육성을 교육목표로 한다. 1. 전공 기본 지식을 체계적으로 2015년 상명대학교 ICT융합대학 컴퓨터과학과 졸업 프로젝트 전시회 2015 Computer Science Graduate Exhibition 2015 Computer Science Graduate Exhibition 1 컴퓨터과학과 교육목표 컴퓨터과학과의 컴퓨터과학 프로그램은 해당분야 에서 학문적 기술을 창의적으로 연구하고 산업적 기술을 주도적으로 개발하는

More information

정적으로 설치된 mod_ssl 모듈확인 동적으로 설치된 mod_ssl 모듈확인 웹서버에 설치된 모듈중 mod_so.c 를 먼저 확인후 동적으로 설치된 모듈중 mod_ssl.so 를 확인합니다. 동적으로 설치된 경우 apache 설치 디렉토리의 module 이나 libe

정적으로 설치된 mod_ssl 모듈확인 동적으로 설치된 mod_ssl 모듈확인 웹서버에 설치된 모듈중 mod_so.c 를 먼저 확인후 동적으로 설치된 모듈중 mod_ssl.so 를 확인합니다. 동적으로 설치된 경우 apache 설치 디렉토리의 module 이나 libe Apache 설치방법 보기 Apache 웹서버에 SSL를 적용하기 위해 아래 두 항목이 웹서버에 설치되어 있어야 합니다. Openssl 암호화 라이브러리 Mod_ssl 모듈 위 두 항목이 웹서버에 설치되어 있다면 개인키를 생성하고 생성된 개인키를 바탕으로 CSR 파일을 생성합니다. 생성된 CSR 파일을 한비로에 접수하여 정식 인증서를 발급받습니다. 발급된 인증서를

More information

C++Builder ADO Programming (5) - ADO Transaction, Errors

C++Builder ADO Programming (5) - ADO Transaction, Errors C++Builder ADO Programming (5) - ADO Transaction, Errors Collections, Connection Events 지난번 강의에서 우리의 레밍은 TADOConnection의 여러 가지 속성들과 메소드들을 익히고 그것을 사용해서 SQL 문도 실행시키고 저장 프로시저도 호출해 보았다. 그것은 그것 나름대로의 한 방법이며

More information

특허청구의 범위 청구항 1 게임 서버 또는 미들웨어에 의해, 사용자 단말기로부터, GPS 정보, IP 정보, 중계기 정보 중 적어도 하나를 이 용한 위치 정보와, 상기 사용자 단말기에 설정된 언어 종류를 포함하는 사용자 정보를 수신하는 단계; 상기 게임 서버 또는 미들

특허청구의 범위 청구항 1 게임 서버 또는 미들웨어에 의해, 사용자 단말기로부터, GPS 정보, IP 정보, 중계기 정보 중 적어도 하나를 이 용한 위치 정보와, 상기 사용자 단말기에 설정된 언어 종류를 포함하는 사용자 정보를 수신하는 단계; 상기 게임 서버 또는 미들 (51) Int. Cl. (19) 대한민국특허청(KR) (12) 등록특허공보(B1) G06Q 50/00 (2006.01) (21) 출원번호 10-2010-0074348 (22) 출원일자 2010년07월30일 심사청구일자 (56) 선행기술조사문헌 KR1020010104538 A* KR1020060124328 A* 2010년07월30일 *는 심사관에 의하여 인용된

More information

[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL T-SQL 문법 5.3 JAVA 프로그래밍 2

[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL T-SQL 문법 5.3 JAVA 프로그래밍 2 5 장 SQL 응용 데이터베이스실험실 1 [ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL 5.2.1 T-SQL 문법 5.3 JAVA 프로그래밍 2 5.1 데이터베이스프로그래밍개념 프로그래밍 이라고하면프로그램소스를설계하고, 작성하고, 디버깅하는과정을말한다. 프로그램 혹은소프트웨어는컴퓨터에서주어진작업을하는명령어나열을말한다. 데이터베이스프로그래밍은명확한정의는없지만데이터베이스에데이터를정의하고,

More information

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 8 장클래스와객체 I 이번장에서학습할내용 클래스와객체 객체의일생직접 메소드클래스를 필드작성해 UML 봅시다. QUIZ 1. 객체는 속성과 동작을가지고있다. 2. 자동차가객체라면클래스는 설계도이다. 먼저앞장에서학습한클래스와객체의개념을복습해봅시다. 클래스의구성 클래스 (class) 는객체의설계도라할수있다. 클래스는필드와메소드로이루어진다.

More information

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인 스마일서브 CLOUD_Virtual 워드프레스 설치 (WORDPRESS INSTALL) 스마일서브 가상화사업본부 Update. 2012. 09. 04. 본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게

More information

목차 Q-1. 데이터를 통한 음성통화가 되지 않습니다.... 4 Q-2. WiFi 연결이 안됩니다.... 4 Q-3. 인터넷 또는 네트워크 연결이 안됩니다.... 5 Q-4. 표준 부속품을 알려주시기 바랍니다.... 6 Q-5. 구입하였습니다만, 배터리는 어떻게 장착하

목차 Q-1. 데이터를 통한 음성통화가 되지 않습니다.... 4 Q-2. WiFi 연결이 안됩니다.... 4 Q-3. 인터넷 또는 네트워크 연결이 안됩니다.... 5 Q-4. 표준 부속품을 알려주시기 바랍니다.... 6 Q-5. 구입하였습니다만, 배터리는 어떻게 장착하 사용자 FAQ (URoad-LFM300) 2015. 08. 26 1 / 19 Copyright c MODACOM Co., Ltd. 목차 Q-1. 데이터를 통한 음성통화가 되지 않습니다.... 4 Q-2. WiFi 연결이 안됩니다.... 4 Q-3. 인터넷 또는 네트워크 연결이 안됩니다.... 5 Q-4. 표준 부속품을 알려주시기 바랍니다.... 6 Q-5.

More information

CLX8380_KR.book

CLX8380_KR.book 이 사용설명서와 제품은 저작권법에 의해 보호되어 있습니다. 삼성전자 ( 주 ) 의 사전 서면 동의 없이 사용설명서 및 제품의 일부 또는 전체를 복사, 복제, 번역 또는 전자매체나 기계가 읽을 수 있는 형태로 바꿀 수 없습니다. 이 사용설명서와 제품은 표기상의 잘못이나 기술적인 잘못이 있을 수 있으며 사전 통보 없이 이러한 내용들이 변경될 수 있습니다. CLX-8380ND,

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 11 장상속 이번장에서학습할내용 상속이란? 상속의사용 메소드재정의 접근지정자 상속과생성자 Object 클래스 종단클래스 상속을코드를재사용하기위한중요한기법입니다. 상속이란? 상속의개념은현실세계에도존재한다. 상속의장점 상속의장점 상속을통하여기존클래스의필드와메소드를재사용 기존클래스의일부변경도가능 상속을이용하게되면복잡한 GUI 프로그램을순식간에작성

More information

슬라이드 1

슬라이드 1 Hadoop Tutorial - 설치및실행 2008. 7. 17 한재선 (NexR 대표이사 ) jshan0000@gmail.com http://www.web2hub.com H.P: 016-405-5469 Brief History Hadoop 소개 2005년 Doug Cutting(Lucene & Nutch 개발자 ) 에의해시작 Nutch 오픈소스검색엔진의분산확장이슈에서출발

More information

0118_Wealth Management

0118_Wealth Management Wealth Management Guide 3 4 Daewoo Securities Co., Ltd. Wealth Management Guide 5 6 Daewoo Securities Co., Ltd. Wealth Management Guide 7 8 Daewoo Securities Co., Ltd. Wealth Management Guide 9 10 Daewoo

More information

No Slide Title

No Slide Title Copyright, 2001 Multimedia Lab., CH 3. COM object (In-process server) Eun-sung Lee twoss@mmlab.net Multimedia Lab. Dept. of Electrical and Computer Eng. University of Seoul Seoul, Korea 0. Contents 1.

More information

11장.key

11장.key JAVA Programming 1 GUI 2 2 1. GUI! GUI! GUI.! GUI! GUI 2. GUI!,,,!! GUI! GUI 11 : GUI 12 : GUI 3 4, JComponent 11-1 :, JComponent 5 import java.awt.*; import java.awt.event.*; import javax.swing.*; public

More information

UDP Flooding Attack 공격과 방어

UDP Flooding Attack 공격과 방어 황 교 국 (fullc0de@gmail.com) SK Infosec Co., Inc MSS Biz. Security Center Table of Contents 1. 소개...3 2. 공격 관련 Protocols Overview...3 2.1. UDP Protocol...3 2.2. ICMP Protocol...4 3. UDP Flood Test Environment...5

More information

TTA Journal No.157_서체변경.indd

TTA Journal No.157_서체변경.indd 표준 시험인증 기술 동향 FIDO(Fast IDentity Online) 생체 인증 기술 표준화 동향 이동기 TTA 모바일응용서비스 프로젝트그룹(PG910) 의장 SK텔레콤 NIC 담당 매니저 76 l 2015 01/02 PASSWORDLESS EXPERIENCE (UAF standards) ONLINE AUTH REQUEST LOCAL DEVICE AUTH

More information

Microsoft PowerPoint - XAD-400.ppt [호환 모드]

Microsoft PowerPoint - XAD-400.ppt [호환 모드] 4Ch H.264 Hardware Codec H.264 User s Manual VER 2.0 4 Channel Real-time playback / USB backup The most stable and reliable real stand alone Digital Video Multiplex Recorder 설치 및 사용시 주의사항 초기설치 및 사용시 주의사항

More information

StruxureWare Data Center Expert 7.2.x 의 새 기능 StruxureWare Data Center Expert 7.2.x 릴리스에서 사용할 수 있는 새 기능에 대해 자세히 알아보십시오. 웹 클라이언트 시작 화면: StruxureWare Cen

StruxureWare Data Center Expert 7.2.x 의 새 기능 StruxureWare Data Center Expert 7.2.x 릴리스에서 사용할 수 있는 새 기능에 대해 자세히 알아보십시오. 웹 클라이언트 시작 화면: StruxureWare Cen Online Help StruxureWare Data Center Expert Version 7.2.4 StruxureWare Data Center Expert 7.2.x 의 새 기능 StruxureWare Data Center Expert 7.2.x 릴리스에서 사용할 수 있는 새 기능에 대해 자세히 알아보십시오. 웹 클라이언트 시작 화면: StruxureWare

More information

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for 2003 Development of the Software Generation Method using Model Driven Software Engineering Tool,,,,, Hoon-Seon Chang, Jae-Cheon Jung, Jae-Hack Kim Hee-Hwan Han, Do-Yeon Kim, Young-Woo Chang Wang Sik, Moon

More information

LCD Display

LCD Display LCD Display SyncMaster 460DRn, 460DR VCR DVD DTV HDMI DVI to HDMI LAN USB (MDC: Multiple Display Control) PC. PC RS-232C. PC (Serial port) (Serial port) RS-232C.. > > Multiple Display

More information

오늘날의 기업들은 24시간 365일 멈추지 않고 돌아간다. 그리고 이러한 기업들을 위해서 업무와 관련 된 중요한 문서들은 언제 어디서라도 항상 접근하여 활용이 가능해야 한다. 끊임없이 변화하는 기업들 의 경쟁 속에서 기업내의 중요 문서의 효율적인 관리와 활용 방안은 이

오늘날의 기업들은 24시간 365일 멈추지 않고 돌아간다. 그리고 이러한 기업들을 위해서 업무와 관련 된 중요한 문서들은 언제 어디서라도 항상 접근하여 활용이 가능해야 한다. 끊임없이 변화하는 기업들 의 경쟁 속에서 기업내의 중요 문서의 효율적인 관리와 활용 방안은 이 C Cover Story 05 Simple. Secure. Everywhere. 문서관리 혁신의 출발점, Oracle Documents Cloud Service 최근 문서 관리 시스템의 경우 커다란 비용 투자 없이 효율적으로 문서를 관리하기 위한 기업들의 요구는 지속적으로 증가하고 있다. 이를 위해, 기업 컨텐츠 관리 솔루션 부분을 선도하는 오라클은 문서관리

More information

VZ94-한글매뉴얼

VZ94-한글매뉴얼 KOREAN / KOREAN VZ9-4 #1 #2 #3 IR #4 #5 #6 #7 ( ) #8 #9 #10 #11 IR ( ) #12 #13 IR ( ) #14 ( ) #15 #16 #17 (#6) #18 HDMI #19 RGB #20 HDMI-1 #21 HDMI-2 #22 #23 #24 USB (WLAN ) #25 USB ( ) #26 USB ( ) #27

More information

<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770>

<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770> 327 Journal of The Korea Institute of Information Security & Cryptology ISSN 1598-3986(Print) VOL.24, NO.2, Apr. 2014 ISSN 2288-2715(Online) http://dx.doi.org/10.13089/jkiisc.2014.24.2.327 개인정보 DB 암호화

More information

ODS-FM1

ODS-FM1 OPTICAL DISC ARCHIVE FILE MANAGER ODS-FM1 INSTALLATION GUIDE [Korean] 1st Edition (Revised 4) 상표 Microsoft, Windows 및 Internet Explorer는 미국 및 / 또는 다른 국가에서 Microsoft Corporation 의 등록 상표입 Intel 및 Intel Core

More information

BACK TO THE BASIC C++ 버그 헌팅: 버그를 예방하는 11가지 코딩 습관

BACK TO THE BASIC C++ 버그 헌팅: 버그를 예방하는 11가지 코딩 습관 Hanbit ebook Realtime 30 C++ 버그 헌팅 버그를 예방하는 11가지 코딩 습관 Safe C++ 블라디미르 쿠스퀴니르 지음 / 정원천 옮김 이 도서는 O REILLY의 Safe C++의 번역서입니다. BACK TO THE BASIC C++ 버그 헌팅 버그를 예방하는 11가지 코딩 습관 BACK TO THE BASIC C++ 버그 헌팅 버그를

More information

VOL.76.2008/2 Technical SmartPlant Materials - Document Management SmartPlant Materials에서 기본적인 Document를 관리하고자 할 때 필요한 세팅, 파일 업로드 방법 그리고 Path Type인 Ph

VOL.76.2008/2 Technical SmartPlant Materials - Document Management SmartPlant Materials에서 기본적인 Document를 관리하고자 할 때 필요한 세팅, 파일 업로드 방법 그리고 Path Type인 Ph 인터그래프코리아(주)뉴스레터 통권 제76회 비매품 News Letters Information Systems for the plant Lifecycle Proccess Power & Marine Intergraph 2008 Contents Intergraph 2008 SmartPlant Materials Customer Status 인터그래프(주) 파트너사

More information

비식별화 기술 활용 안내서-최종수정.indd

비식별화 기술 활용 안내서-최종수정.indd 빅데이터 활용을 위한 빅데이터 담당자들이 실무에 활용 할 수 있도록 비식별화 기술과 활용방법, 실무 사례 및 예제, 분야별 참고 법령 및 활용 Q&A 등 안내 개인정보 비식별화 기술 활용 안내서 Ver 1.0 작성 및 문의 미래창조과학부 : 양현철 사무관 / 김자영 주무관 한국정보화진흥원 : 김진철 수석 / 김배현 수석 / 신신애 부장 문의 : cckim@nia.or.kr

More information

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public Chapter 9 Lab 문제정답 1. public class Circle private double radius; static final double PI=3.141592; // PI 이름으로 3.141592 로초기화된정적상수 (1) public Circle(double r) radius = r; (2) public double getradius() return

More information

<4D6963726F736F667420506F776572506F696E74202D2030342E20C0CEC5CDB3DD20C0C0BFEB20B9D720BCADBAF1BDBA20B1E2BCFA2831292E70707478>

<4D6963726F736F667420506F776572506F696E74202D2030342E20C0CEC5CDB3DD20C0C0BFEB20B9D720BCADBAF1BDBA20B1E2BCFA2831292E70707478> 웹과 인터넷 활용 및실습 () (Part I) 문양세 강원대학교 IT대학 컴퓨터과학전공 강의 내용 전자우편(e-mail) 인스턴트 메신저(instant messenger) FTP (file transfer protocol) WWW (world wide web) 인터넷 검색 홈네트워크 (home network) Web 2.0 개인 미니홈페이지 블로그 (blog)

More information

TCP.IP.ppt

TCP.IP.ppt TCP/IP TCP/IP TCP/IP TCP/IP TCP/IP Internet Protocol _ IP Address Internet Protocol _ Subnet Mask Internet Protocol _ ARP(Address Resolution Protocol) Internet Protocol _ RARP(Reverse Address Resolution

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web Browser Web Server ( ) MS Explorer 5.0 WEB Server MS-SQL HTML Image Multimedia IIS Application Web Server ASP ASP platform Admin Web Based ASP Platform Manager Any Platform ASP : Application Service

More information

20주년용

20주년용 지상파 하이브리드 TV 시스템 개발 초고속 통신망의 발전으로 인터넷을 통한 고화질 비디오 서비스가 가능하게 되었고, IPTV 서비스 등의 방통융합서비스도 본격화되고 있 또한 최근에는 단순한 방송시청 뿐 만 아니라 검색이나 SNS 서비스 등의 다양한 기능을 가진 스마트TV도 등장하였 이에 따라 방송 이외의 매체를 통한 비디오 콘텐츠 소비가 증가하고 있고, IT사업자들과

More information

다. 최신 버전의 rpm 패키지 버전을 다운로드해 다음과 같이 설 치한다. 단 debuginfo의 rpm 패키지는 설치할 필요가 없다. 하기 위한 옵션이고, init는 저장소를 초기화하기 위한 cvs 명령 어이다. - 새로 설치한 경우 : rpm -ivh cvs* -

다. 최신 버전의 rpm 패키지 버전을 다운로드해 다음과 같이 설 치한다. 단 debuginfo의 rpm 패키지는 설치할 필요가 없다. 하기 위한 옵션이고, init는 저장소를 초기화하기 위한 cvs 명령 어이다. - 새로 설치한 경우 : rpm -ivh cvs* - 개발자를 위한 리눅스 유틸리티 활용법 CVS를 이용한 프로젝트 관리 연재의 마지막 시간에는 리눅스의 소스 버전 관리를 위한 툴을 소개한다. 이 툴은 흔히 형상 관리 시스템, 버전 관리 시스템이라고 일컬어진다. 윈도우나 리눅스 시스템 환경에는 여러 가지 형상 관 리 시스템이 존재하는데 여기서는 현재 오픈소스로 널리 알려진 CVS에 대해 살펴본다. 4 연 재 순

More information

cam_IG.book

cam_IG.book 설치 안내서 AXIS P3301 고정형 돔 네트워크 카메라 AXIS P3301-V 고정형 돔 네트워크 카메라 한국어 AXIS P3304 고정형 돔 네트워크 카메라 AXIS P3304-V 고정형 돔 네트워크 카메라 문서 정보 본 문서에는 사용자 네트워크에 AXIS P3301/P3304 고정형 돔 네트워크 카메라를 설치하는 방법에 대 한 지침이 포함되어 있습니다.

More information

Assign an IP Address and Access the Video Stream - Installation Guide

Assign an IP Address and Access the Video Stream - Installation Guide 설치 안내서 IP 주소 할당 및 비디오 스트림에 액세스 책임 본 문서는 최대한 주의를 기울여 작성되었습니다. 잘못되거나 누락된 정보가 있는 경우 엑시스 지사로 알려 주시기 바랍니다. Axis Communications AB는 기술적 또는 인쇄상의 오류에 대해 책 임을 지지 않으며 사전 통지 없이 제품 및 설명서를 변경할 수 있습니다. Axis Communications

More information

Microsoft PowerPoint - VHDL02_full.ppt [호환 모드]

Microsoft PowerPoint - VHDL02_full.ppt [호환 모드] VHDL 프로그래밍 2. VHDL 언어사용해보기 한동일 학습목표 기존프로그래밍언어의간단한예를다룬다. VHDL 언어의간단한예를다룬다. 각언어의실제적인사용예를파악한다. 기존프로그래밍언어와비교되는 VHDL언어의차이점을이해한다. 엔티티선언의의미를파악한다. 아키텍처선언의의미를파악한다. VHDL 언어의문장구조를눈에익힌다. 디지털로직과이의 VHDL 표현과정을이해한다. 2/23

More information

단계

단계 TIBERO-WAS 연동 Guide 본문서에서는 Tibero RDBMS 에서제공하는 JDBC 통한 JEUS, WEBLOGIC 등다양한 WAS (Web Application Server) 제품과의연동방법을알아본다. Contents 1. Connection Pool 방식... 2 2. JEUS 연동... 3 2.1. JEUSMain.xml 설정 (Thin 방식

More information

鍮뚮┰硫붾돱??李⑤낯

鍮뚮┰硫붾돱??李⑤낯 5 1 2 3 4 5 6 7 8 9 1 2 3 6 7 1 2 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 30 31 32 33 34 36 37 38 39 40 41 42 43 44 45 OK 46 47 OK 48 OK 49 50 51 OK OK 52 53 54 55 56 57 58 59 60 61

More information

歯2000-09-Final.PDF

歯2000-09-Final.PDF Design Pattern - API JSTORM http://www.jstorm.pe.kr -1- java API 2000-08-14 Public 2000-08-16 Draft (dbin@handysoft.co.kr), (pam@emotion.co.kr) HISTORY (csecau@orgio.net) 2001/2/15 9 10 jstorm

More information

Jwplayer 요즘 웹에서 동영상 재생을 목적으로 많이 쓰이는 jwplayer의 설치와 사용하기 입니다. jwplayer홈페이지 : http://www.longtailvideo.com 위의 홈페이지에 가시면 JWplayer를 다운 받으실 수 있습니다. 현재 5.1버전

Jwplayer 요즘 웹에서 동영상 재생을 목적으로 많이 쓰이는 jwplayer의 설치와 사용하기 입니다. jwplayer홈페이지 : http://www.longtailvideo.com 위의 홈페이지에 가시면 JWplayer를 다운 받으실 수 있습니다. 현재 5.1버전 Jwplayer Guide Jwplayer 요즘 웹에서 동영상 재생을 목적으로 많이 쓰이는 jwplayer의 설치와 사용하기 입니다. jwplayer홈페이지 : http://www.longtailvideo.com 위의 홈페이지에 가시면 JWplayer를 다운 받으실 수 있습니다. 현재 5.1버전까지 나왔으며 편리함을 위해서 아래를 링크를 걸어둡니다 [다운로드]

More information

untitled

untitled - 3 - - 4 - - 5 - - 6 - - 7 - - 8 - - 9 - - 10 - - 11 - - 12 - - 13 - - 14 - - 15 - - 16 - - 17 - - 18 - - 19 - - 20 - ( ) / / / / (, /, ) /, - 21 - CMI DB DB - 22 - - 23 - - 24 - - 25 - - 26 - - 27 -

More information

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어 개나리 연구소 C 언어 노트 (tyback.egloos.com) 프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어먹고 하더라구요. 그래서,

More information

제20회_해킹방지워크샵_(이재석)

제20회_해킹방지워크샵_(이재석) IoT DDoS DNS (jaeseog@sherpain.net) (www.sherpain.net) DDoS DNS DDoS / DDoS(Distributed DoS)? B Asia Broadband B Bots connect to a C&C to create an overlay network (botnet) C&C Provider JP Corp. Bye Bye!

More information

manual pdfÃÖÁ¾

manual pdfÃÖÁ¾ www.oracom.co.kr 1 2 Plug & Play Windows 98SE Windows, Linux, Mac 3 4 5 6 Quick Guide Windows 2000 / ME / XP USB USB MP3, WMA HOLD Windows 98SE "Windows 98SE device driver 7 8 9 10 EQ FM LCD SCN(SCAN)

More information

Microsoft PowerPoint - JavaPrimer.ppt [호환 모드]

Microsoft PowerPoint - JavaPrimer.ppt [호환 모드] Linux 용 JAVA 설치 1. http://java.sun.com/javase/downloads/index.jsp 에서 JDK 6u1 의 Download 를 선택하여해당플랫폼의 JDK 6u1 를다운받는다 2. Linux용 RPM버전 1) sh jdk-6u1-linux-i586-rpm.bin 2) rpm Uvh jdk-6u1-linux-i586-rpm 3)

More information

(72) 발명자 이병근 광주 북구 첨단과기로 123, E-201 (오룡동, 광주과 학기술원) 쉐리 아흐매드 무킴 광주 북구 첨단과기로 123, E-506 (오룡동, 광주과 학기술원) 최형욱 광주 북구 첨단과기로 123, 5214호 (오룡동, 광주 과학기술원 대학원생활관

(72) 발명자 이병근 광주 북구 첨단과기로 123, E-201 (오룡동, 광주과 학기술원) 쉐리 아흐매드 무킴 광주 북구 첨단과기로 123, E-506 (오룡동, 광주과 학기술원) 최형욱 광주 북구 첨단과기로 123, 5214호 (오룡동, 광주 과학기술원 대학원생활관 (19) 대한민국특허청(KR) (12) 공개특허공보(A) (11) 공개번호 10-2015-0034900 (43) 공개일자 2015년04월06일 (51) 국제특허분류(Int. Cl.) G06N 3/02 (2006.01) (21) 출원번호 10-2013-0114695 (22) 출원일자 2013년09월26일 심사청구일자 없음 전체 청구항 수 : 총 20 항 (71)

More information

K&R2 Reference Manual 번역본

K&R2 Reference Manual 번역본 typewriter structunion struct union if-else if if else if if else if if if if else else ; auto register static extern typedef void char short int long float double signed unsigned const volatile { } struct

More information

소구분 : 조건문 / 반복문 / 연산자 ( 단답형 ) 난이도 : 하 [Q2] 다음반복테스트 (loop test) 클래스의실행결과를적으시오. public class ForLoop { int total = 0; for( int i=1; i<=5; i++ ) { for( i

소구분 : 조건문 / 반복문 / 연산자 ( 단답형 ) 난이도 : 하 [Q2] 다음반복테스트 (loop test) 클래스의실행결과를적으시오. public class ForLoop { int total = 0; for( int i=1; i<=5; i++ ) { for( i 과목명총문항수 O/X 문제형 4 지선다형 5 지선다형단답형서술형 JAVA( 필기테스트 ) 20 문항 0 문항 10 문항 0 문항 10 문항 0 문항 대구분 : Java API 소구분 : Object class/string class/stringbuffer/wrapper ( 단답형 ) [Q1] 다음프로그램은간단한회원정보를포함하고있는클래스를작성한것이다. 실행결과를적으시오.

More information

5.스택(강의자료).key

5.스택(강의자료).key CHP 5: https://www.youtube.com/watch?v=ns-r91557ds ? (stack): (LIFO:Last-In First-Out):. D C B C B C B C B (element) C (top) B (bottom) (DT) : n element : create() ::=. is_empty(s) ::=. is_full(s) ::=.

More information

最即時的Sybase ASE Server資料庫診斷工具

最即時的Sybase ASE Server資料庫診斷工具 TOAD 9.5 Toad Oracle 料 SQL 料 行 理 SQLprofile Quest Software 了 Oracle -Toad Tools of Oracle Application Developers Toad 了 DBA DBA 理 易 度 Toad 料 SQL PL/SQL Toad Oracle PL/SQL Toad Schema Browser Schema Browser

More information

학습목표 네트워크개요 TCP PORT URL/InetAddress Socket/TCP 을이용한네트워크 2

학습목표 네트워크개요 TCP PORT URL/InetAddress Socket/TCP 을이용한네트워크 2 Chapter 12 네트워크프로그래밍 New Java Programming with a Workbook 학습목표 네트워크개요 TCP PORT URL/InetAddress Socket/TCP 을이용한네트워크 2 Network 개요 네트워크 데이터전송프로토콜을가지고통신하는연결된장치들을총칭 네트워크망 3 TCP TCP (Transmission Control Protocol)

More information

제11장 자바 입출력

제11장 자바 입출력 제11 장자바입출력 Java_surce->src->ch11 I/O Stream gic 자바입출력 2 서버와클라이언트의소켓준비 자바입출력 3 11.1.1 스트림개념 스트림 순서가있고, 길이가정해져있지않은데이터흐름종류 자바입출력 바이트 ( 바이너리, 숫자 ) 텍스트 ( 문자 )...InputStream...OutputputStream...Reader...Writer

More information

씨에이에스는 서울특별시 시설관리공단 계약 제1579호(2005.7.25) 장애인 콜택시 콜센터 차량관제시스템 구축사업 감리용역 에 근거하여 카나스 에서 수행중인 장애인콜택시 콜센터 차량관제시스템 구축사업에 대한 최종감리를 실시하고 본 보고서를 제출합니다. 2005.11

씨에이에스는 서울특별시 시설관리공단 계약 제1579호(2005.7.25) 장애인 콜택시 콜센터 차량관제시스템 구축사업 감리용역 에 근거하여 카나스 에서 수행중인 장애인콜택시 콜센터 차량관제시스템 구축사업에 대한 최종감리를 실시하고 본 보고서를 제출합니다. 2005.11 관리 번호 씨에이에스 감리 2005-102호 서울특별시 시설관리공단 장애인콜택시 콜센터 차량관제시스템 구축사업 최종감리 보고서 2005 년 11 월 씨에이에스 씨에이에스는 서울특별시 시설관리공단 계약 제1579호(2005.7.25) 장애인 콜택시 콜센터 차량관제시스템 구축사업 감리용역 에 근거하여 카나스 에서 수행중인 장애인콜택시 콜센터 차량관제시스템 구축사업에

More information

Microsoft PowerPoint - 2.Catalyst Switch Intrastructure Protection_이충용_V1 0.ppt [호환 모드]

Microsoft PowerPoint - 2.Catalyst Switch Intrastructure Protection_이충용_V1 0.ppt [호환 모드] Catalyst Switch Infrastructure Protection Cisco Systems Korea SE 이충용 (choolee@cisco.com) Overview DoS (Denial of Service) 공격대상 - Server Resource - Network Resource - Network devices (Routers, Firewalls

More information

디지털포렌식학회 논문양식

디지털포렌식학회 논문양식 ISSN : 1976-5304 http://www.kdfs.or.kr Virtual Online Game(VOG) 환경에서의 디지털 증거수집 방법 연구 이 흥 복, 정 관 모, 김 선 영 * 대전지방경찰청 Evidence Collection Process According to the Way VOG Configuration Heung-Bok Lee, Kwan-Mo

More information