KR20120115902A - 화상형성장치, OSGi 기반 서비스 설치 방법, OSGi 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체 - Google Patents

화상형성장치, OSGi 기반 서비스 설치 방법, OSGi 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체 Download PDF

Info

Publication number
KR20120115902A
KR20120115902A KR1020110033488A KR20110033488A KR20120115902A KR 20120115902 A KR20120115902 A KR 20120115902A KR 1020110033488 A KR1020110033488 A KR 1020110033488A KR 20110033488 A KR20110033488 A KR 20110033488A KR 20120115902 A KR20120115902 A KR 20120115902A
Authority
KR
South Korea
Prior art keywords
bundle
service
user interface
osgi
information
Prior art date
Application number
KR1020110033488A
Other languages
English (en)
Inventor
황기영
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020110033488A priority Critical patent/KR20120115902A/ko
Priority to US13/242,781 priority patent/US9225861B2/en
Priority to EP11186742A priority patent/EP2512113A1/en
Priority to CN2011103568179A priority patent/CN102739760A/zh
Priority to TW101108893A priority patent/TW201241646A/zh
Priority to PCT/KR2012/002723 priority patent/WO2012141477A2/en
Publication of KR20120115902A publication Critical patent/KR20120115902A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00413Display of information to the user, e.g. menus using menus, i.e. presenting the user with a plurality of selectable options
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00413Display of information to the user, e.g. menus using menus, i.e. presenting the user with a plurality of selectable options
    • H04N1/00416Multi-level menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00413Display of information to the user, e.g. menus using menus, i.e. presenting the user with a plurality of selectable options
    • H04N1/00416Multi-level menus
    • H04N1/00419Arrangements for navigating between pages or parts of the menu
    • H04N1/00427Arrangements for navigating between pages or parts of the menu using a menu list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00413Display of information to the user, e.g. menus using menus, i.e. presenting the user with a plurality of selectable options
    • H04N1/00416Multi-level menus
    • H04N1/00419Arrangements for navigating between pages or parts of the menu
    • H04N1/00432Arrangements for navigating between pages or parts of the menu using tabs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00472Display of information to the user, e.g. menus using a pop-up window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00474Output means outputting a plurality of functional options, e.g. scan, copy or print
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00501Tailoring a user interface [UI] to specific requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00938Software related arrangements, e.g. loading applications
    • H04N1/00941Interaction of different applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/00973Input arrangements for operating instructions or parameters, e.g. updating internal software from a remote device, e.g. receiving via the internet instructions input to a computer terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor

Abstract

화상형성장치가 개시된다. 본 화상형성장치는, 제1 번들에 대한 서비스 실행 명령을 입력받는 사용자 인터페이스부, 및, 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역에 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들의 UI가 반영되어 표시되도록 사용자 인터페이스부를 제어하는 제어부를 포함한다.

Description

화상형성장치, OSGi 기반 서비스 설치 방법, OSGi 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체{IMAGE FORMING APPARATUS, METHOD OF INSTALLING OPEN SERVICES GATEWAY INITIATIVE(OSGI)-BASED, SERVICE, METHOD OF PROVIDING OSGI-BASED SERVICE, AND COMPUTER-READABLE RECORDING MEDIUM}
본 발명은 화상형성장치, OSGi 기반 서비스 설치 방법, OSGI 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체에 관한 것으로, OGSi 프레임워크에 기설치된 번들에 대한 기능 확장을 수행할 수 있는 화상형성장치, OSGi 기반 서비스 설치 방법, OSGI 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체에 관한 것이다.
디지털 기술과 인터넷 보급이 급속히 진행되면서 이를 활용하여 일반 사용자의 일상생활에 도움이 될 수 있도록 서비스를 제공하는 디지털 홈 구축이 진행되고 있다. 디지털 홈 기술은 지금까지의 초고속 인터넷 공유, 파일 공유, 그리고 주변장치 공유를 위해 추진되던 단순한 홈 네트워킹의 개념을 뛰어 넘어 잘 갖추어진 외부 통신 인프라를 활용하여 더욱 다양한 기능의 서비스를 제공하는데 그 목표가 있다.
이러한 디지털 홈 기술의 대표적인 서비스 플랫폼으로는 자바 가상 머신(JAVA Vitual Machine) 기반하에 작동하게 만들어진 OSGi(Open Service Gateway initiative) 서비스 플랫폼이 있다. OSGi는 프레임워크(framework) 상에서 HTTP, 서비스 관리, 로그 서비스 등의 기본적인 서비스를 제공하며, 서비스 제공자들은 자신의 서비스를 번들 형태로 OSGi 프레임워크에 배포함으로써 서비스를 제공할 수 있다. 특히 OSGi는 UPnP, Jini, HAVi 등 기존의 홈 네트워크 기술들을 지원하므로, TV 셋톱박스, 케이블 모뎀, 알람 시스템, 에너지 관리 시스템 등과 같은 다양한 환경에 적용되고 있다.
OSGi에서 사용되는 번들(bundle)은 서로의 기능을 내보내거나(Export) 불러와(Import) 사용할 수 있다. 이로 인해 번들 간의 확장이 가능하며 서로의 유연성을 바탕으로 재사용성과 기능들의 재조합을 이루어낼 수 있다.
하지만, 종래에는 기능의 확장과 연동을 통하여 번들 간의 인터페이스를 재사용하여 서로 간의 연동이 가능한 방법만을 제공하였을 뿐, 사용자 인터페이스(UI)의 확장을 통하여 기능을 확장할 수 있는 방법은 제공하지 않았다.
따라서, 번들이 작동하는 상황에서 사용자 인터페이스 창을 동적으로 변경하여, 기능의 확장과 더불어 사용자 인터페이스 창의 확장성까지 지원할 수 있는 방법이 요청되었다.
따라서, 본 발명은 OGSi 프레임워크에 기설치된 번들에 대한 기능 확장을 수행할 수 있는 화상형성장치, OSGi 기반 서비스 설치 방법, OSGI 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체를 제공하는 데 있다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 화상형성장치는, 제1 번들에 대한 서비스 실행 명령을 입력받는 사용자 인터페이스부, 및, 상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역에 상기 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들의 UI가 반영되어 표시되도록 상기 사용자 인터페이스부를 제어하는 제어부를 포함한다.
이 경우, 상기 제어부는, 상기 제2 번들의 UI를 선택받으면, 상기 제1 번들에 대응하는 사용자 인터페이스 창에 포함된 정보에 기초하여 상기 제2 번들의 서비스 엔진을 구동하고, 상기 제2 번들의 서비스 엔진의 실행 결과가 표시되도록 상기 사용자 인터페이스부를 제어하는 것이 바람직하다.
한편, 상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역은, 상기 제1 번들의 서비스 제공시 표시되는 사용자 인터페이스 창의 복수의 영역 중 기설정된 변경 가능한 영역인 것이 바람직하다.
이 경우, 상기 변경 가능한 영역은, 툴박스(Toolbox) 영역, 디테일 뷰 탭(Detailed View Tap) 영역, 메뉴(Menu) 영역 중 적어도 한 영역인 것이 바람직하다.
한편, 상기 UI 확장 정보는, 상기 제2 번들이 제공하는 서비스에 대한 실행 명령을 입력받기 위한 UI에 대한 형태 정보, 상기 제1 번들의 변경 가능한 영역 중 상기 UI가 표시될 위치에 대한 확장 위치 정보, 상기 제2 번들이 제공하는 서비스의 실행 결과에 대한 표시 방법에 대한 액션 정보 중 적어도 하나의 정보를 포함하는 것이 바람직하다.
이 경우, 상기 UI 확장 정보는 XML(eXtensible Markup Language)로 기재되어 있는 것이 바람직하다.
한편, 상기 사용자 인터페이스부는, 상기 제1 번들에 대한 사용자 인터페이스 창을 표시하면서, 상기 사용자 인터페이스 창의 상기 위치 정보에 대응하는 영역에 상기 제2 번들에 대응하는 UI 영역을 확장하여 표시하는 것이 바람직하다.
한편, 상기 사용자 인터페이스부는, 상기 실행 결과를 팝업창 형태로 표시하는 것이 바람직하다.
한편, 다른 실시 예에 따른 화상형성장치는, OSGi 기반 서비스를 표시하는 사용자 인터페이스부, 및, 제1 번들이 제공하는 제1 서비스를 표시하는 제1 UI, 상기 제1 번들 설치 이후에 설치되는 제2 번들이 제공하는 제2 서비스를 표시하는 제2 UI, 및 상기 제2 번들 설치 이후에 상기 제1 UI 상에 제2 번들이 제공하는 제2 서비스를 표시하는 확장 UI를 포함하는 사용자 인터페이스 창이 표시되도록 상기 사용자 인터페이스부를 제어하는 제어부를 포함한다.
한편, 본 실시 예에 따른 OSGi(Open Service Gateway initiative) 기반 서비스 설치 방법은, OSGi 프레임워크에 설치될 신규 번들(bundle)을 선택받는 단계, 상기 신규 번들이 상기 OSGi 프레임워크에 기설치된 번들에 대한 UI 확장 정보를 포함하는지를 판단하는 단계, 상기 신규 번들을 상기 OSGi 프레임워크에 설치하는 단계, 및, 상기 기설치된 번들에 대응하는 서비스 실행시, 상기 기설치된 번들에 대응하는 사용자 인터페이스 창의 일 영역에 상기 UI 확장 정보에 따른 UI가 반영되어 표시되도록 상기 UI 확장 정보를 상기 OSGi 프레임워크 상에 설정하는 단계를 포함한다.
이 경우, 상기 기설치된 번들은, 서비스 실행시 표시되는 사용자 인터페이스 창의 복수의 영역 중 변경 가능한 UI 영역이 설정되어 있는 것이 바람직하다.
이 경우, 상기 변경 가능한 영역은, 툴박스(Toolbox) 영역, 디테일 뷰 탭(Detailed View Tap) 영역, 메뉴(Menu) 영역 중 적어도 한 영역인 것이 바람직하다.
한편, 상기 UI 확장 정보는, 상기 신규 번들이 제공하는 서비스에 대한 실행 명령을 입력받기 위한 UI에 대한 형태 정보, 상기 기설치된 번들의 변경 가능한 영역 중 상기 UI가 표시될 위치에 대한 확장 위치 정보, 상기 신규 번들이 제공하는 서비스의 실행 결과에 대한 표시 방법에 대한 액션 정보 중 적어도 하나의 정보를 포함하는 것이 바람직하다.
이 경우, 상기 UI 확장 정보는 XML(eXtensible Markup Language)로 기재되어 있는 것이 바람직하다.
한편, 상기 신규 번들은, 상기 기설치된 번들에서 제공되는 사용자 인터페이스 창에 포함된 정보를 이용하여 상기 신규 번들이 제공하는 서비스를 제공하는 것이 바람직하다.
한편, 본 실시 예에 따른 OSGi 기반 서비스 제공 방법은, 제1 번들에 대한 서비스 실행 명령을 입력받는 단계, 및, 상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역에 상기 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들의 UI가 반영하여 표시하는 단계를 포함한다.
이 경우, 본 OSGi 기반 서비스 제공 방법은, 상기 제2 번들의 UI를 선택받으며, 상기 제1 번들에 대응하는 사용자 인터페이스 창에 포함된 정보에 기초하여 상기 제2 번들의 서비스 엔진을 구동하는 단계, 및, 상기 제1 번들에 대응하는 사용자 인터페이스 창에 상기 제2 번들의 서비스 엔진의 실행 결과를 표시하는 단계를 더 포함할 수 있다.
한편, 상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역은, 상기 제1 번들의 서비스 제공시 표시되는 사용자 인터페이스 창의 복수의 영역 중 기설정된 변경 가능한 영역인 것이 바람직하다.
이 경우, 상기 변경 가능한 영역은, 툴박스(Toolbox) 영역, 디테일 뷰 탭(Detailed View Tap) 영역, 메뉴(Menu) 영역 중 적어도 한 영역인 것이 바람직하다.
한편, 상기 UI 확장 정보는, 상기 제2 번들이 제공하는 서비스에 대한 실행 명령을 입력받기 위한 UI에 대한 형태 정보, 상기 제1 번들의 변경 가능한 영역 중 상기 UI가 표시될 위치에 대한 확장 위치 정보, 상기 제2 번들이 제공하는 서비스의 실행 결과에 대한 표시 방법에 대한 액션 정보 중 적어도 하나의 정보를 포함하는 것이 바람직하다.
이 경우, 상기 UI 확장 정보는 XML(eXtensible Markup Language)로 기재되어 있는 것이 바람직하다.
한편, 상기 표시하는 단계는, 상기 제1 번들에 대한 사용자 인터페이스 창을 표시하면서, 상기 사용자 인터페이스 창의 상기 위치 정보에 대응하는 영역에 상기 제2 번들에 대응하는 UI 영역을 확장하여 표시하는 것이 바람직하다.
한편, 상기 실행 결과를 표시하는 단계는, 상기 실행 결과를 팝업창 형태로 표시하는 것이 바람직하다.
한편, 본 실시 예에 따른 OSGi 기반 서비스 제공 방법을 실행하기 위한 프로그램을 포함하는 컴퓨터 판독가능 기록매체에서, 상기 OSGi 기반 서비스 제공 방법은, 제1 번들에 대한 서비스 실행 명령을 입력받는 단계, 상기 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들이 존재하는지를 판단하는 단계, 및, 상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역에 상기 UI 확장 정보에 따른 UI를 반영하여 표시하는 단계를 포함할 수 있다.
이 경우, 상기 OSGi 기반 서비스 제공 방법은, 상기 UI를 선택받으면, 상기 제1 번들에 대응하는 사용자 인터페이스 창에 포함된 정보에 기초하여 상기 제2 번들의 서비스 엔진을 구동하는 단계, 및, 상기 제1 번들에 대응하는 사용자 인터페이스 창에 상기 제2 번들의 서비스 엔진의 실행 결과를 표시하는 단계를 더 포함할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 화상형성 시스템의 구성을 나타내는 도면,
도 2는 도 1의 화상형성장치의 구체적인 구성을 나타내는 블록도,
도 3 내지 도 5는 본 실시 예에 따른 번들의 기능 확장을 설명하기 위한 도면,
도 6 내지 도 10은 도 1의 화상형성장치에서 제공가능한 사용자 인터페이스 창의 예를 도시한 도면,
도 11은 본 실시 예에 따른 UI 확장 정보를 갖는 번들의 파일 구조를 나타낸 도면,
도 12는 본 실시 예에 따른 서비스 설치 방법을 설명하기 위한 흐름도, 그리고,
도 13은 본 실시 예에 따른 서비스 제공 방법을 설명하기 위한 흐름도이다.
이하에서, 첨부된 도면을 참조하여 본 발명에 대하여 자세하게 설명한다.
도 1은 본 발명의 일 실시 예에 따른 화상 형성 시스템의 구성을 나타내는 도면이다.
도 1을 참고하면, 화상 형성 시스템(1000)은 서버(10) 및 화상형성장치(100)를 포함한다.
서버(10)는 화상형성장치(100)에 번들을 제공할 수 있는 기능을 가지는 장치로, 서버 이외에 PC, PDA(personal Digital Asstance), 휴대전화, 디지털 카메라, 디지털 비디오 카메라, POS 단말 등으로 구현될 수 있다.
여기서 번들이란, 서비스 제공자들이 자신의 신규 서비스를 배포하기 위하여 작성하는 프로그램이다. 번들의 구체적인 동작에 대해서는 도 3을 참고하여 후술한다.
그리고 서비스란, OSGi 기반의 장치에서 제공하는 각종 기능을 의미한다. 예를 들어, OSGi 기반의 장치가 화상형성장치인 경우, FAX, 복사, 프린팅과 같은 일반적인 화상형성장치에서 제공되는 각종 기능들이 서비스에 해당하며, 종래의 화상형성장치에서 제공되지는 않지만, 번들이 설치됨으로써 지원할 수 있는 기능, 예를 들어, FAX 문서를 특정 메일로 전송하는 기능 또한 서비스에 해당된다.
그리고, 서버(10)는 화상형성장치(100)에 번들 설치 명령을 전송할 수 있으며, 화상형성장치(100)에 서비스 실행 명령을 전송할 수 있다. 그리고, 서버(10)는 서비스 실행 명령에 대응하는 서비스 실행 결과를 화상형성장치(100)로부터 수신할 수 있다.
화상형성장치(100)는 서버(10)로부터 번들을 수신하여, OSGi 프레임워크에 설치할 수 있다. 이러한 화상형성장치의 예로는 복사기, 프린터, 팩시밀리, 또는 이들의 기능을 하나의 장치를 통해 복합적으로 구현하는 복합기(Muti Function Peripheral: MFP) 등을 들 수 있다.
화상형성장치(100)의 구체적인 구성 및 기능은 도 2를 참고하여 이하에서 자세하게 설명한다.
도 2는 도 1의 화상형성장치(100)의 구체적인 구성을 나타내는 블록도이다.
도 2를 참고하면, 화상형성장치(100)는 통신 인터페이스부(110), 사용자 인터페이스부(120), 저장부(130), 판단부(140), 화상형성부(150) 및 제어부(160)를 포함할 수 있다.
통신 인터페이스부(110)는 화상형성장치(100)를 외부 기기(예를 들어, 서버(10))와 연결하기 위해 형성되며, 근거리 통신망(LAN: Local Area Network) 및 인터넷망을 통해 접속되는 형태뿐만 아니라, USB(Universal Serial Bus) 포트 및 무선 모듈을 통하여 접속되는 형태도 가능하다.
그리고 통신 인터페이스부(110)는 서버(10)로부터 번들 설치 명령을 입력받을 수 있으며, 서버(10)로부터 신규 번들을 수신할 수 있다. 이러한 번들 설치 명령은 서버(10)로부터 수신된 될 수도 있으며, 후술할 사용자 인터페이스부(120)를 통하여 입력받을 수도 있다.
그리고 통신 인터페이스부(110)는 서버(10)로부터 서비스 실행 명령을 수신받을 수 있으며, 수신받은 서비스 실행 명령을 제어부(160)에 전달할 수 있다.
그리고 통신 인터페이스부(110)는 입력받은 서비스 실행 명령에 따른 서비스 실행 결과를 서버(10)에 전송할 수 있다.
사용자 인터페이스부(120)는 화상형성장치(100)에서 지원하는 각종 기능을 사용자가 설정 또는 선택할 수 있는 다수의 기능키들을 구비하며, 화상형성장치(100)에서 제공되는 각종 정보를 표시할 수 있다. 사용자 인터페이스부(120)는 터치패드 등과 같이 입력과 출력이 동시에 구현되는 장치로 구현될 수도 있고, 마우스 및 모니터의 결합을 통한 장치로도 구현이 가능하다.
사용자는 사용자 인터페이스부(120)가 제공하는 사용자 인터페이스 창을 통하여, OSGi 프레임워크에 설치될 신규 번들을 선택할 수 있다. 그리고 사용자는 사용자 인터페이스부(120)가 제공하는 사용자 인터페이스 창을 통하여, 제공받고자 하는 서비스를 선택하여 서비스 실행 명령을 입력할 수 있다.
그리고, 사용자 인터페이스부(120)는 제1 번들이 제공하는 제1 서비스를 표시하는 제1 UI, 제1 번들 설치 이후에 설치되는 제2 번들이 제공하는 제2 서비스를 표시하는 제2 UI, 및 제2 번들 설치 이후에 제1 UI 상에 제2 번들이 제공하는 제2 서비스를 표시하는 확장 UI를 포함하는 사용자 인터페이스 창을 표시할 수 있다. 즉, 사용자 인터페이스부(120)는 제1 번들이 제공하는 제1 UI 상의 변경 가능한 영역에 제2 번들의 실행 명령을 입력받기 위한 확장 UI를 표시할 수 있다.
그리고 사용자 인터페이스부(120)는 사용자의 서비스 실행 명령 대응하는 서비스 실행 결과를 표시할 수 있다.
저장부(130)는 번들을 저장한다. 구체적으로, 저장부(130)는 통신 인터페이스부(110)를 통하여 수신된 번들을 저장할 수 있다. 그리고 저장부(130)는 화상 형성 장치(100) 내부에 장착된 메모리, 예를 들면 ROM, 플래시 메모리나 HDD일 수 있으며, 화상 형성 장치(100)와 연결된 외장형 HDD 또는 메모리 카드, 예를 들면 플래시 메모리(flash memory: M/S, xD, SD등)나 USB 메모리 등일 수도 있다.
그리고 저장부(130)는 UI 확장 정보를 저장할 수 있다. 여기서, UI 확장 정보는, 기설치된 번들(예를 들어, 제1 번들)이 제공하는 UI 창을 확장하거나, 기설치된 번들(제1 번들)이 제공하는 기능을 확장할 수 있게 하는 정보로, 형태 정보, 위치 정보, 액션 정보를 포함할 수 있다. UI 확장 정보의 구체적인 구성 및 그 기능에 대해서는 도 11을 참고하여 후술한다. .
판단부(140)는 신규 번들이 OSGi 프레임워크에 기설치된 번들에 대한 UI 확장 정보를 포함하는지를 판단한다. 구체적으로, 판단부(140)는 통신 인터페이스부(110) 또는 사용자 인터페이스부(120)를 통하여 수신된 번들 설치 명령에 대응되는 신규 번들에 도 11과 같은 XML 영역이 존재하는지를 확인하고, 이를 파싱하여 UI 확장 정보가 포함되어 있는지를 판단할 수 있다.
화상 형성부(150)는 인쇄 작업을 수행한다. 구체적으로, 사용자의 서비스 요청 명령이 인쇄 서비스와 관련된 것인 경우, 화상형성부(150)는 사용자의 서비스 요청에 대응하여 인쇄 작업을 수행할 수 있다. 도시된 예에서는 화상형성장치(100)가 기능 구성으로써 화상 형성부(150)만을 포함하는 것만을 도시하였지만, 팩스 기능을 수행할 수 있는 팩스 구성 및 문서를 스캔할 수 있는 스캔 구성도 포함될 수 있다.
제어부(160)는 화상형성장치(100) 내의 구성을 제어한다. 구체적으로, 제어부(160)는 사용자 번들 설치 명령을 수신하면, 신규 번들에 UI 확장 정보가 포함되어 있는지 판단하도록 판단부(140)를 제어하고, 신규 번들을 OSGi 프레임워크에 설치할 수 있다.
그리고 신규 번들(이하 제2 번들)에 UI 확장 정보가 포함되어 있으면, 제어부(160)는 UI 확장 정보를 OSGi 프레임워크에 설정할 수 있다. 구체적으로, 제어부(160)는 UI 확장 정보를 파싱하여 UI가 확장되어야 하는 부분을 인식하고, 인식된 UI 확장 영역이 실제로 UI 확장할 수 있는지를 판단한다. 즉, UI 확장 정보에 포함된 변경 가능 영역이 기설정된 번들에서 확장 가능한 영역으로 설정되어 있는지를 판단할 수 있다. UI 확장 정보의 변경 가능 영역이 실제로 확장 가능한 영역인 경우, 제어부(160)는 기설치된 번들의 UI 형태가 변경되도록 UI 확장 정보를 오픈플랫폼에 설정한다.
이와 같은 설정에 의하여, OSGi 프레임워크는 제1 번들에 대한 서비스 실행 명령이 있는 경우, 제1 번들에 대한 서비스 실행시, 제1 번들이 제공하는 사용자 인터페이스 창의 일 영역에 UI 확장 정보에 대응한 UI가 함께 표시되도록 할 수 있다. 즉, 기설치된 번들(제1 번들)에 대한 UI 확장을 수행할 수 있다.
그리고 제어부(160)는 설치된 번들에 대응하는 서비스를 제공할 수 있다. 구체적으로, OSGi 프레임워크에 설치된 제1 번들에 대응하는 서비스 개시 명령이 인가되면, 제어부(160)는 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들이 존재하는지를 판단하고, 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들이 없는 경우, 제어부(160)는 제1 번들이 제공하는 사용자 인터페이스 창이 표시되도록 사용자 인터페이스부(120)를 제어하거나, 제1 번들이 제공하는 사용자 인터페이스 창이 서버(10) 상에 표시되도록 통신 인터페이스부(110)를 제어할 수 있다.
그리고 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들이 존재하는 경우, 제어부(160)는 제1 번들이 제공하는 사용자 인터페이스 창의 일 영역에 UI 확장 정보에 따른 UI을 반영하여 표시하도록 사용자 인터페이스부(120)를 제어하거나, 제1 번들이 제공하는 사용자 인터페이스 창의 일 영역에 UI 확장 정보에 따른 UI을 반영한 사용자 인터페이스 창이 서버(10)에 표시되도록 통신 인터페이스부(110)를 제어할 수 있다.
그리고 사용자가 UI 확장 정보에 따른 UI를 선택하면, 제어부(160)는 기설치된 번들(제1 번들)에 대응하는 사용자 인터페이스 창에 포함된 정보에 기초하여 신규 번들(제2 번들)의 서비스 엔진을 구동하고, 기설치된 번들(제1 번들)에 대응하는 사용자 인터페이스 창에 서비스 엔진의 실행 결과가 표시되도록 사용자 인터페이스부(120)를 제어하거나, 서비스 엔진의 실행 결과가 서버(10)에 전송되도록 통신 인터페이스부(110)를 제어할 수 있다. 이때, 서비스 엔진의 실행 결과는 제1 번들이 제공하는 사용자 인터페이스 창 위에 팝업창 형태로 표시될 수 있다.
이상과 같이 본 실시 예에 따른 화상형성장치(100)는 UI 확장 정보를 갖는 번들을 OSGi 프레임워크에 설치함으로써, 기설치된 번들에 대한 UI를 확장할 수 있으며, UI 확장을 통하여 기능 확장을 수행할 수 있게 된다.
도 3 내지 도 5는 본 실시 예에 따른 번들의 기능 확장을 설명하기 위한 도면이다.
구체적으로, 도 3은 OSGi 기술에서 서버 플랫폼이 가지는 주요 아키텍처의 서버 중심에서의 확장성을 나타내는 다이어그램이다.
도 3을 참고하면, 제어부(160)는 자바 가상 머신(JAVA Vitual Machine)(161), OSGi 플랫폼(162)으로 구성된다.
OSGi 오픈플랫폼(162)은 자바 가상 머신(161) 기반하에 작동하며, OSGi 서비스 플랫폼(163) 및 복수의 번들(164)로 구성된다.
OSGi 서비스 플랫폼(163)은 HTTP, 서비스 관리, 로그 서비스 등의 기본적인 서비스를 제공하며, OSGi 서비스 플랫폼에 설치된 번들(164)을 통하여 확장된 서비스를 제공할 수 있다.
이러한 OSGi 오픈플랫폼(또는 OSGi 서비스 플랫폼)에서 상단의 런타임(runtime)에 있는 번들 들(165-1, 165-2, 165-3)의 연결은 XML 문서를 바탕으로 정의된다. 따라서, 개발자들은 기본 SDK를 바탕으로 번들을 만들어 확장할 수 있으며, 번들의 오픈된 인터페이스를 사용하여 번들 상호 간의 참조를 통하여 번들의 기능을 확장하여 개발할 수 있다. 서로 간의 참조하는 정보는 XML에 서술되어 있으며 이를 통하여 연결된다.
한편, 종래에는 상술한 바와 같은 번들 상호 간의 참조를 통하여 기능의 확장과 재사용만을 정의하였으나, 본 실시 예에서는 UI 영역에서의 확장, 수정 및 변경 기능을 제공한다.
구체적으로, 제1 번들(기설치된 번들)에 대해서 변경 가능 영역을 지정하고, 제2 번들(신규 번들)에 제1 번들의 UI 변경 가능 영역 중 UI 확장할 영역(즉, 확장 위치), 확장 위치에서 표시된 UI 형태, 제2 번들이 제공할 서비스를 설정하여, 기설치된 번들(제1 번들)에 대한 UI를 확장할 수 있게 된다. 이러한 UI 확장 동작에 대해서는 도 4를 참고하여 구체적으로 설명한다.
도 4는 UI 확장 정보를 갖는 번들과 기설치된 번들 간의 동작을 설명하기 위한 도면이다.
도 4를 참고하면, 사용자는 자신의 웹프로그램(기설치된 번들)을 플러그 앤 플레이(Plug&play) 형식으로 원하는 기능을 확장하기 위하여 새로운 기능의 번들을 추가할 수 있다.
구체적으로, 사용자는 제1 번들(165-1)이 동작하고 있는 상황에서 기능의 확장을 위하여 새로운 제2 번들(165-2)을 추가할 수 있다(1). 여기서 제1 번들(165-1)은 연결된 장치들을 관리할 수 있는 서비스를 제공하는 번들이고, 제2 번들(165-2)은 파일 저장 상태를 관리할 수 있는 서비스를 제공하는 번들이다.
이때, 제2 번들은 XML 기반의 UI 확장 정보를 이용하여 다른 제1 번들의 UI의 원하는 UI 변경 가능 영역(extension point)에 UI를 추가할 수 있는 번들이다(2).
제1 번들의 서비스 수행시, OSGi 오픈플랫폼은 새로 확장된 UI를 바탕으로 제1 번들 내에 추가된 기능을 수행할 수 있다(3). 제1 번들 내에 추가된 기능을 사용자가 요청한 경우, 그 기능은 제2 번들에 포함된 서비스 엔진에서 구현된다(4)
도 5는 UI 확장 정보를 갖는 신규 번들의 동작을 설명하기 위한 도면이다.
도 5를 참고하면, 본 실시 예에 따른 OSGi 오픈플랫폼(XOAH Platform)은 각 OSGi 표현층(Presentation layer)에 존재하는 UI XML 파일을 파싱하고, 이 정보를 바탕으로 사용자 인터페이스 창을 관리하여 사용자 인터페이스를 다른 번들이 확장 가능하게 지원할 수 있다.
이러한 UI 확장을 위해서는 기설치된 번들은 자신이 제공하는 사용자 인터페이스 창의 복수의 영역 중 변경 가능한 영역이 정의되어 있어야 하며, 신규 번들은 확장 위치 정보, 형태 정보, 액션 정보를 포함하고 있어야 한다.
확장 위치 정보는 제1 번들의 변경 가능한 영역(Extension Point) 중 UI 확장이 수행될 영역에 대한 위치 정보이다. 즉, 타 번들이 인젝션(inject)을 허락한 지점 중 실제 인젝션이 수행될 영역에 대한 정보이다. 이러한 변경 가능한 영역은 기설치된 번들이 제공하는 사용자 인터페이스 창 중 툴박스(Toolbox) 영역, 디테일 뷰 탭 영역(Detailed View Tap) 영역, 메뉴(Menu) 영역일 수 있다. 이러한 확장 위치 정보는 도 11의 1110 영역과 같이 XML 언어로 표현될 수 있다. 한편, 이러한 확장 위치 정보는 키(key) 값으로 반드시 고유한 값을 가져야 한다. 만약 동일한 값이 존재하는 경우, OSGi 오픈플랫폼은 런타임(runtime) 시에 이 값의 동일한 이례(exception) 메시지를 출력하여 문제점을 알려줄 수 있다.
액션 정보는 제2 번들이 제공하는 서비스의 실행 결과에 대한 표시 방법에 대한 정보이다. 즉, 특정 액션이 발생하였을 경우, 변경 가능한 영역(Extension Point)에서 UI가 해 주어야 할 내용에 대한 정보로, 변경 가능한 영역이 툴박스 영역인 경우 사용자가 해당 툴박스 영역을 클릭하였을 때 팝 업의 경로 정보를 포함할 수 있다. 이러한 액션 정보는 도 11의 1130 영역과 같이 XML 언어로 표현될 수 있다. 예를 들어, 1130 영역의 "/fileStorage.cm.presentation/client/FileStorage_MyFunction.swf" 값은 사용자가 Action(클릭)을 하였을 경우, "FileStorage_MyFunction.swf" 파일을 팝업 형식으로 띄어 주겠다는 선언 정보이다.
형태 정보는 제2 번들(신규 번들)이 제공하는 서비스에 대한 실행 명령을 입력받기 위한 UI에 대한 정보이다. 즉, 확장된 UI를 화면에 표시할 때 어떠한 텍스트(text)나 아이콘(Icon) 등으로 확장을 해 줄 것인가를 정의하는 정보이다. 이러한 형태 정보는 도 11의 1120 영역과 같이 XML 언어로 표현될 수 있다. 예를 들어, 1120 영역의 "<xoa-s-remoteui:displayNameKey>File Storage</xoa-s-remoteui:displayNameKey> <xoa-s-remoteui:resourceMenuRule>3</xoa-s-remoteui:resourceMenuRule>" 값은 UI 영역의 타이틀에 대한 정보이고, "<xoa-s-remoteui:toolTipKey>filestorage.detail.resource.toolBox.myfunction.tooltip.key</xoa-s-remoteui:toolTipKey>" 값은 툴팁(tool-tip) 창으로 표시될 때의 아이콘 형태에 대한 정보이고, "<xoa-s-remoteui:imageUri>/filestorage.cm.presentation/static-client/assets/icons/toolbox/myFunction_plan.png</xoa-s-remoteui:imageUri>" 은 확장된 UI 화면에 표시될 아이콘의 형상에 대한 정보이며, "<xoa-s-remoteui:length>0</xoa-s-remoteui:length> <xoa-s-remoteui:width>90</xoa-s-remoteui:width>" 팝업창으로 실행 결과를 표시될 때의 팝업창의 크기에 대한 정보이다.
도 6 내지 도 10은 도 1의 화상형성장치에서 제공가능한 사용자 인터페이스 창의 예를 도시한 도면이다.
구체적으로, 도 6은 기설치된 번들의 사용자 인터페이스 창의 예를 도시한 도면이다.
도 6을 참고하면, 기설치된 번들이 제공하는 사용자 인터페이스 창(600)은, 메뉴 영역(610), 뷰 영역(620), 팝업 디테일 뷰 컨테이너 영역(630), 팝업 메뉴 바 영역(640), 팝업 디테일 뷰 영역(650), 툴박스 영역(660)을 포함할 수 있다.
이때 기설치된 번들은 상술한 복수의 영역 중 일부 영역에 대해서만 변경 가능한 영역으로 설정할 수 있다. 예를 들어, 메뉴 영역(610), 디테일 뷰 탭 영역(620, 630), 툴박스 영역(660)을 변경 가능한 영역(extension point)로 설정할 수 있다.
도 7은 제1 번들이 제공하는 사용자 인터페이스 창의 예이고, 도 8은 UI 확장 정보에 의하여 UI가 확장된 사용자 인터페이스 창의 예이다.
도 7 및 도 8을 비교하여 참고하면, 도 7의 710 영역은 제1 번들이 제공하는 사용자 인터페이스 창에 있어서의 변경 가능한 영역이다. 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들이 설치되면, 해당 변경 가능한 영역(710) 영역에 UI 확장 정보에 대응하는 UI(810)가 표시됨을 확인할 수 있다. 도 9는 도 8의 툴 박스 영역을 구체적으로 도시한 도면이다.
도 10은 사용자가 UI 확장 영역을 선택한 경우 표시될 수 있는 사용자 인터페이스 창의 일 예이다.
도 10을 참고하면, 제2 번들의 서비스 엔진에 의한 실행 결과가 팝업 창 형태(1010)로 표시됨을 확인할 수 있다. 이러한 제2 번들의 서비스 엔진은 도 8의 사용자 인터페이스 창 상의 정보에 기초하여 동작할 수 있다. 구체적으로, 확장된 UI 영역은 아이콘 형태만으로 표시된다는 점에서, 제1 번들이 제공하는 사용자 인터페이스 창의 사용자 선택 및 사용자가 기재한 정보에 기초하여 서비스를 수행할 수 있다. 그리고, 그 결과를 도 10과 같이 팝업창 형태로 표시하거나, 제1 번들이 제공하는 사용자 인터페이스 창의 일 측에 표시할 수도 있다.
도 11은 본 실시 예에 따른 UI 확장 정보의 파일 구조의 일 예를 나타낸 도면이다.
도 11을 참고하면, UI 확장 정보는 XML(eXtensible Markup Language)로 기재되어 있음을 확인할 수 있다. 그리고, UI 확장 정보(1100)는 확장 위치 정보(1110), 형태 정보(1130), 액션 정보(1120)를 포함한다.
확장 위치 정보(1100)는 제1 번들의 변경 가능한 영역(Extension Point) 중 UI 확장이 수행될 영역에 대한 위치 정보이다. 도 11을 참고하면, 변경 가능한 영역으로 "fileStorge.toolbox.illingPlan"이 설정되어 있음을 확인할 수 있다.
액션 정보(1130)는 제2 번들이 제공하는 서비스의 실행 결과에 대한 표시 방법에 대한 정보이다. 도 11을 참고하면, "/fileStorage.cm.presentation/client/FileStorage_MyFunction.swf"이라는 파일이 팝업 형태로 표시되는 것이 설정되어 있음을 확인할 수 있다.
형태 정보(1120)는 제2 번들이 제공하는 서비스에 대한 실행 명령을 입력받기 위한 UI에 대한 정보이다. 도 11을 참고하면, UI 영역의 타이틀이 File Storage로 설정되어 있으며, 표시 아이콘이 "myFunction_plan.png" 파일로 설정되어 있음을 확인할 수 있다.
도 12는 본 실시 예에 따른 서비스 설치 방법을 설명하기 위한 흐름도이다.
도 12를 참고하면, 먼저, OSGi 프레임워크에 설치될 신규 번들을 선택받는다(S1210). 구체적으로, 사용자는 외부 서버(10)에 저장된 복수의 번들 중 적어도 하나를 선택함으로써 화상형성장치(100)의 OSGi 프레임워크에 설치된 신규 번들을 선택하거나, 화상형성장치(100)에 기수신되어 저장된 신규 번들 중 OSGi 프레임워크에 설치할 신규 번들을 선택할 수 있다.
그리고 신규 번들이 OSGi 프레임워크에 기설치된 번들에 대한 UI 확장 정보를 포함하는지를 판단한다(S1220). 구체적으로, 번들 설치 명령에 대응되는 신규 번들에 도 11과 같은 XML 영역이 존재하는지를 확인하여 UI 확장 정보를 포함하는지를 판단할 수 있다.
그리고 신규 번들이 UI 확장 정보를 포함하면, OSGi 프레임워크에 UI 확장 정보를 설정한다(S1230). 이와 같은 설정에 의하여, OSGi 프레임워크는 제1 번들에 대한 서비스 실행 명령이 있는 경우, 제1 번들에 대한 서비스 실행시, 제1 번들이 제공하는 사용자 인터페이스 창의 일 영역에 UI 확장 정보에 대응한 UI가 함께 표시되도록 할 수 있다. 즉, 기설치된 번들(제1 번들)에 대한 UI 확장을 수행할 수 있다.
그리고 신규 번들을 OSGi 프레임워크에 설치한다(S1240).
따라서, 본 실시 예에 따른 서비스 설치 방법은 UI 확장정보를 갖는 신규 번들을 설치할 수 있는바, 기설치된 번들에 대한 기능 확장 및 UI 확장을 수행할 수 있게 된다. 도 12과 같은 서비스 설치 방법은, 도 2의 구성을 가지는 화상형성장치 상에서 실시될 수 있으며, 그 밖의 구성을 가지는 화상형성장치 상에서도 실행될 수 있다.
도 13은 본 실시 예에 따른 서비스 제공 방법을 설명하기 위한 흐름도이다.
도 13을 참고하면, 사용자로부터 서비스 실행 명령을 입력받는다(S1310). 구체적으로, OSGi 프레임워크에 설치된 번들에 대응하는 서비스의 목록을 사용자에게 표시하고, 이 중 하나를 선택받음으로써 서비스 실행 명령을 입력받을 수 있다. 그리고 이러한 서비스 실행 명령은 외부기기(예를 들어, 서버(10))로부터 수신될 수도 있다.
그리고 사용자의 서비스 실행 명령에 대응하는 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들이 존재하는지를 판단한다(S1320). 구체적으로, OSGi 프레임워크에 설정된 UI 확장 정보를 이용하여, 제2 번들이 존재하는지를 판단할 수 있다.
판단 결과, 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들이 존재하지 않은면(S1320-N), 제1 번들이 제공하는 사용자 인터페이스 창을 표시한다(S1330). 즉, 일반적인 사용자 인터페이스 창이 사용자에게 제공될 수 있다. 이러한 사용자 인터페이스 창은 화상형성장치(100)의 사용자 인터페이스부(120)에 표시되거나, 외부기기(예를 들어, 서버(10))에 표시될 수 있다.
한편, 판단 결과, 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들이 존재하면(S1320-Y), 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역에 UI 확장 정보에 따른 UI를 반영하여 표시한다(S1340). 즉, 제1 번들이 제공하는 사용자 인터페이스 창을 확장한 변경된 사용자 인터페이스 창을 표시할 수 있다. 이러한 사용자 인터페이스 창은 화상형성장치(100)의 사용자 인터페이스부(120)에 표시되거나, 외부기기(예를 들어, 서버(10))에 표시될 수 있다.
그리고 사용자가 UI 확장 영역 이외의 서비스 실행 영역을 선택하면(S1350-N), 제1 번들의 서비스 엔진을 구동한다(S1360). 구체적으로, 제1 번들이 제공하는 일반적인 서비스를 수행할 수 있다.
반면에, 사용자가 UI 확장 영역을 선택하면(S1350-Y), 제2 번들의 서비스 엔진을 구동한다(S1370). 이때, 제2 번들의 서비스 엔진은 제1 번들의 사용자 인터페이스 창에 포함된 정보를 이용하여 서비스를 수행할 수 있다.
그리고 서비스 엔진의 실행 결과를 표시한다(S1380). 구체적으로, 제1 번들의 서비스 엔진의 실행 결과 및 제2 번들의 서비스 엔진의 실행 결과를 표시할 수 있다. 이러한 실행 결과의 표시는 화상형성장치(100)의 사용자 인터페이스부(120)에 표시되거나, 외부기기(예를 들어, 서버(10))에 표시될 수도 있다.
따라서, 본 실시 예에 따른 서비스 수행 방법은 OSGi 프레임워크에 등록된 UI 확장 정보에 기초하여 확장된 사용자 인터페이스 창을 제공하여, 확장된 기능을 제공할 수 있다. 도 13과 같은 서비스 실행 방법은, 도 2의 구성을 가지는 화상형성장치 상에서 실시될 수 있으며, 그 밖의 구성을 가지는 화상형성장치 상에서도 실행될 수 있다.
또한, 상술한 바와 같은 서비스 설치 방법은, 상술한 바와 같은 서비스 설치 방법 및 서비스 수행 방법을 실행하기 위한 적어도 하나의 실행 프로그램으로 구현될 수 있으며, 이러한 실행 프로그램은 컴퓨터 판독 기록매체에 저장될 수 있다.
따라서, 본 발명의 각 블록들은 컴퓨터 판독가능한 기록매체 상의 컴퓨터 기록 가능한 코드로써 실시될 수 있다. 컴퓨터 판독가능한 기록매체는 컴퓨터시스템에 의해 판독될 수 있는 데이터를 저장할 수 있는 디바이스가 될 수 있다.
예를 들어, 컴퓨터 판독가능한 기록매체는 롬(ROM), 램(RAM), 씨디-롬(CD-ROMs), 마그네틱 테이프, 플로피 디스크, 광디스크, 광 데이터 저장 디바이스 및 상기 저장 디바이스를 포함하는 텔레비전과 같은 영상디스플레이 장치 등이 될 수 있다. 또한, 컴퓨터 판독가능한 코드는 반송파의 컴퓨터 데이터 신호로 실시될 수 있다.
이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어 져서는 안 될 것이다.
100: 화상형성장치 110: 통신 인터페이스부
120: 사용자 인터페이스부 130: 저장부
140: 판단부 150: 화상형성부
160: 제어부 10: 서버

Claims (25)

  1. OSGi(Open Service Gateway initiative) 기반 서비스를 제공하는 화상형성장치에 있어서,
    제1 번들에 대한 서비스 실행 명령을 입력받는 사용자 인터페이스부; 및
    상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역에 상기 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들의 UI가 반영되어 표시되도록 상기 사용자 인터페이스부를 제어하는 제어부;를 포함하는 화상형성장치.
  2. 제1항에 있어서,
    상기 제어부는,
    상기 제2 번들의 UI를 선택받으면, 상기 제1 번들에 대응하는 사용자 인터페이스 창에 포함된 정보에 기초하여 상기 제2 번들의 서비스 엔진을 구동하고, 상기 제2 번들의 서비스 엔진의 실행 결과가 표시되도록 상기 사용자 인터페이스부를 제어하는 것을 특징으로 하는 화상형성장치.
  3. 제1항에 있어서,
    상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역은,
    상기 제1 번들의 서비스 제공시 표시되는 사용자 인터페이스 창의 복수의 영역 중 기설정된 변경 가능한 영역인 것을 특징으로 하는 화상형성장치.
  4. 제3항에 있어서,
    상기 변경 가능한 영역은, 툴박스(Toolbox) 영역, 디테일 뷰 탭(Detailed View Tap) 영역, 메뉴(Menu) 영역 중 적어도 한 영역인 것을 특징으로 하는 화상형성장치.
  5. 제1항에 있어서,
    상기 UI 확장 정보는,
    상기 제2 번들이 제공하는 서비스에 대한 실행 명령을 입력받기 위한 UI에 대한 형태 정보,
    상기 제1 번들의 변경 가능한 영역 중 상기 UI가 표시될 위치에 대한 확장 위치 정보,
    상기 제2 번들이 제공하는 서비스의 실행 결과에 대한 표시 방법에 대한 액션 정보 중 적어도 하나의 정보를 포함하는 것을 특징으로 하는 화상형성장치.
  6. 제5항에 있어서,
    상기 UI 확장 정보는 XML(eXtensible Markup Language)로 기재되어 있는 것을 특징으로 하는 화상형성장치.
  7. 제4항에 있어서,
    상기 제어부는,
    상기 제1 번들에 대한 사용자 인터페이스 창을 표시하면서, 상기 사용자 인터페이스 창의 상기 위치 정보에 대응하는 영역에 상기 제2 번들에 대응하는 UI 영역을 확장하여 표시하는 것을 특징으로 하는 화상형성장치.
  8. 제2항에 있어서,
    상기 사용자 인터페이스부는,
    상기 실행 결과를 팝업창 형태로 표시하는 것을 특징으로 하는 화상형성장치.
  9. OSGi 기반 서비스를 제공하는 화상형성장치에 있어서,
    OSGi 기반 서비스를 표시하는 사용자 인터페이스부; 및
    제1 번들이 제공하는 제1 서비스를 표시하는 제1 UI, 상기 제1 번들 설치 이후에 설치되는 제2 번들이 제공하는 제2 서비스를 표시하는 제2 UI, 및 상기 제2 번들 설치 이후에 상기 제1 UI 상에 제2 번들이 제공하는 제2 서비스를 표시하는 확장 UI를 포함하는 사용자 인터페이스 창이 표시되도록 상기 사용자 인터페이스부를 제어하는 제어부;를 포함하는 화상형성장치.
  10. 화상형성장치에서의 OSGi(Open Service Gateway initiative) 기반 서비스 설치 방법에 있어서,
    OSGi 프레임워크에 설치될 신규 번들(bundle)을 선택받는 단계;
    상기 신규 번들이 상기 OSGi 프레임워크에 기설치된 번들에 대한 UI 확장 정보를 포함하는지를 판단하는 단계;
    상기 신규 번들을 상기 OSGi 프레임워크에 설치하는 단계; 및
    상기 기설치된 번들에 대응하는 서비스 실행시, 상기 기설치된 번들에 대응하는 사용자 인터페이스 창의 일 영역에 상기 UI 확장 정보에 따른 UI가 반영되어 표시되도록 상기 UI 확장 정보를 상기 OSGi 프레임워크 상에 설정하는 단계;를 포함하는 OSGi 기반 서비스 설치 방법.
  11. 제10항에 있어서,
    상기 기설치된 번들은,
    서비스 실행시 표시되는 사용자 인터페이스 창의 복수의 영역 중 변경 가능한 UI 영역이 설정되어 있는 것을 특징으로 하는 OSGi 기반 서비스 설치 방법.
  12. 제11항에 있어서,
    상기 변경 가능한 영역은, 툴박스(Toolbox) 영역, 디테일 뷰 탭(Detailed View Tap) 영역, 메뉴(Menu) 영역 중 적어도 한 영역인 것을 특징으로 하는 OSGi 기반 서비스 설치 방법.
  13. 제10항에 있어서,
    상기 UI 확장 정보는,
    상기 신규 번들이 제공하는 서비스에 대한 실행 명령을 입력받기 위한 UI에 대한 형태 정보,
    상기 기설치된 번들의 변경 가능한 영역 중 상기 UI가 표시될 위치에 대한 확장 위치 정보,
    상기 신규 번들이 제공하는 서비스의 실행 결과에 대한 표시 방법에 대한 액션 정보 중 적어도 하나의 정보를 포함하는 것을 특징으로 하는 OSGi 기반 서비스 설치 방법.
  14. 제13항에 있어서,
    상기 UI 확장 정보는 XML(eXtensible Markup Language)로 기재되어 있는 것을 특징으로 하는 OSGi 기반 서비스 설치 방법.
  15. 제10항에 있어서,
    상기 신규 번들은,
    상기 기설치된 번들에서 제공되는 사용자 인터페이스 창에 포함된 정보를 이용하여 상기 신규 번들이 제공하는 서비스를 제공하는 것을 특징으로 하는 OSGi 기반 서비스 설치 방법.
  16. 화상형성장치에서의 OSGi 기반 서비스 제공 방법에 있어서,
    제1 번들에 대한 서비스 실행 명령을 입력받는 단계; 및
    상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역에 상기 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들의 UI가 반영하여 표시하는 단계;를 포함하는 것을 특징으로 하는 OSGi 기반 서비스 제공 방법.
  17. 제16항에 있어서,
    상기 제2 번들의 UI를 선택받으며, 상기 제1 번들에 대응하는 사용자 인터페이스 창에 포함된 정보에 기초하여 상기 제2 번들의 서비스 엔진을 구동하는 단계; 및
    상기 제1 번들에 대응하는 사용자 인터페이스 창에 상기 제2 번들의 서비스 엔진의 실행 결과를 표시하는 단계;를 더 포함하는 것을 특징으로 하는 OSGi 기반 서비스 제공 방법.
  18. 제16항에 있어서,
    상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역은,
    상기 제1 번들의 서비스 제공시 표시되는 사용자 인터페이스 창의 복수의 영역 중 기설정된 변경 가능한 영역인 것을 특징으로 하는 OSGi 기반 서비스 제공 방법.
  19. 제18항에 있어서,
    상기 변경 가능한 영역은, 툴박스(Toolbox) 영역, 디테일 뷰 탭(Detailed View Tap) 영역, 메뉴(Menu) 영역 중 적어도 한 영역인 것을 특징으로 하는 OSGi 기반 서비스 제공 방법.
  20. 제18항에 있어서,
    상기 UI 확장 정보는,
    상기 제2 번들이 제공하는 서비스에 대한 실행 명령을 입력받기 위한 UI에 대한 형태 정보,
    상기 제1 번들의 변경 가능한 영역 중 상기 UI가 표시될 위치에 대한 확장 위치 정보,
    상기 제2 번들이 제공하는 서비스의 실행 결과에 대한 표시 방법에 대한 액션 정보 중 적어도 하나의 정보를 포함하는 것을 특징으로 하는 OSGi 기반 서비스 제공 방법.
  21. 제20항에 있어서,
    상기 UI 확장 정보는 XML(eXtensible Markup Language)로 기재되어 있는 것을 특징으로 하는 OSGi 기반 서비스 제공 방법.
  22. 제16항에 있어서,
    상기 표시하는 단계는,
    상기 제1 번들에 대한 사용자 인터페이스 창을 표시하면서, 상기 사용자 인터페이스 창의 상기 위치 정보에 대응하는 영역에 상기 제2 번들에 대응하는 UI 영역을 확장하여 표시하는 것을 특징으로 하는 OSGi 기반 서비스 제공 방법.
  23. 제17항에 있어서,
    상기 실행 결과를 표시하는 단계는,
    상기 실행 결과를 팝업창 형태로 표시하는 것을 특징으로 하는 OSGi 기반 서비스 제공 방법.
  24. OSGi 기반 서비스 제공 방법을 실행하기 위한 프로그램을 포함하는 컴퓨터 판독가능 기록매체에 있어서,
    상기 OSGi 기반 서비스 제공 방법은,
    제1 번들에 대한 서비스 실행 명령을 입력받는 단계;
    상기 제1 번들에 대한 UI 확장 정보를 갖는 제2 번들이 존재하는지를 판단하는 단계; 및
    상기 제1 번들에 대응하는 사용자 인터페이스 창의 일 영역에 상기 UI 확장 정보에 따른 UI를 반영하여 표시하는 단계;를 포함하는 컴퓨터 판독가능 기록매체.
  25. 제24항에 있어서,
    상기 OSGi 기반 서비스 제공 방법은,
    상기 UI를 선택받으면, 상기 제1 번들에 대응하는 사용자 인터페이스 창에 포함된 정보에 기초하여 상기 제2 번들의 서비스 엔진을 구동하는 단계; 및
    상기 제1 번들에 대응하는 사용자 인터페이스 창에 상기 제2 번들의 서비스 엔진의 실행 결과를 표시하는 단계;를 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 기록매체.
KR1020110033488A 2011-04-11 2011-04-11 화상형성장치, OSGi 기반 서비스 설치 방법, OSGi 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체 KR20120115902A (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020110033488A KR20120115902A (ko) 2011-04-11 2011-04-11 화상형성장치, OSGi 기반 서비스 설치 방법, OSGi 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체
US13/242,781 US9225861B2 (en) 2011-04-11 2011-09-23 Image forming apparatus, method of installing OSGi-based service, method of providing OSGi-based service, and computer-readable recording medium
EP11186742A EP2512113A1 (en) 2011-04-11 2011-10-26 Image forming apparatus and method using OSGi-based services using a UI region of a first bundle for displaying a UI region of a second bundle.
CN2011103568179A CN102739760A (zh) 2011-04-11 2011-11-11 图像形成装置、安装和提供基于开放服务网关协议的服务的方法
TW101108893A TW201241646A (en) 2011-04-11 2012-03-15 Image forming apparatus and method of providing open services gateway initiative (OSGi)-based service
PCT/KR2012/002723 WO2012141477A2 (en) 2011-04-11 2012-04-10 Image forming apparatus, method of installing osgi-based service, method of providing osgi-based service, and computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110033488A KR20120115902A (ko) 2011-04-11 2011-04-11 화상형성장치, OSGi 기반 서비스 설치 방법, OSGi 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체

Publications (1)

Publication Number Publication Date
KR20120115902A true KR20120115902A (ko) 2012-10-19

Family

ID=45033741

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110033488A KR20120115902A (ko) 2011-04-11 2011-04-11 화상형성장치, OSGi 기반 서비스 설치 방법, OSGi 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체

Country Status (6)

Country Link
US (1) US9225861B2 (ko)
EP (1) EP2512113A1 (ko)
KR (1) KR20120115902A (ko)
CN (1) CN102739760A (ko)
TW (1) TW201241646A (ko)
WO (1) WO2012141477A2 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9767393B2 (en) * 2013-08-09 2017-09-19 Fuji Xerox Co., Ltd. Processing apparatus and display device for creating a process portion to perform a process and registering information related to the process portion
KR102135947B1 (ko) 2013-08-26 2020-07-21 삼성전자주식회사 윈도우 영역 조정 방법 및 그에 따른 전자 장치
CN104658141B (zh) * 2013-11-25 2017-06-23 浙江大华系统工程有限公司 一种报警控制方法及设备
JP6366373B2 (ja) * 2014-06-13 2018-08-01 キヤノン株式会社 情報処理装置とその制御方法、及びプログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2354851B (en) 1999-10-01 2004-07-21 Ibm Web browser extension and method for processing data content of web pages
US20030184584A1 (en) 2002-03-29 2003-10-02 Thomas Vachuska User interface framework for integrating user interface elements of independent software components
US7640542B2 (en) 2005-03-24 2009-12-29 Nokia Corporation Managing midlet suites in OSGI environment
WO2006122024A2 (en) 2005-05-10 2006-11-16 Nokia Siemens Networks Gmbh & Co. Kg Open architecture for internet protocol television
US8239882B2 (en) 2005-08-30 2012-08-07 Microsoft Corporation Markup based extensibility for user interfaces
US8869027B2 (en) * 2006-08-04 2014-10-21 Apple Inc. Management and generation of dashboards
DE102006046360A1 (de) 2006-09-29 2008-04-10 Vodafone Holding Gmbh Verfahren zum Vernetzen von Endgeräten sowie Service-Plattform auf Java-Basis
DE102006046960A1 (de) 2006-10-04 2008-04-10 Euro Allianz Pharma Gmbh Gesundheitsfördernde Nahrungsmittelzusammensetzung
US20080141148A1 (en) 2006-12-08 2008-06-12 Ogita Seiya Image forming device and display control method
JP5169174B2 (ja) * 2006-12-08 2013-03-27 株式会社リコー 画像形成装置、表示制御方法及び表示制御プログラム
US7895296B1 (en) 2006-12-29 2011-02-22 Google, Inc. Local storage for web based native applications
TWI358648B (en) 2007-11-29 2012-02-21 Wistron Corp A system for common compiler service based on the
WO2009084912A2 (en) 2007-12-31 2009-07-09 Samsung Electronics Co., Ltd. METHOD AND SYSTEM FOR RESTRICTING THE EXECUTION OF OPEN SERVICES GATEWAY INITIATIVE (OSGi) LIFE CYCLE COMMANDS
JP4969480B2 (ja) 2008-02-21 2012-07-04 株式会社リコー 画像形成装置、情報処理方法、及び情報処理プログラム
JP5020131B2 (ja) 2008-03-14 2012-09-05 株式会社リコー 情報処理装置、情報処理方法、及びプログラム
TWI383300B (zh) 2008-10-09 2013-01-21 Wistron Corp 用於一開放式服務閘道服務平台中管理應用程序的方法及其相關管理架構
US8335754B2 (en) * 2009-03-06 2012-12-18 Tagged, Inc. Representing a document using a semantic structure

Also Published As

Publication number Publication date
EP2512113A1 (en) 2012-10-17
WO2012141477A3 (en) 2013-03-14
US9225861B2 (en) 2015-12-29
WO2012141477A2 (en) 2012-10-18
TW201241646A (en) 2012-10-16
US20120260197A1 (en) 2012-10-11
CN102739760A (zh) 2012-10-17

Similar Documents

Publication Publication Date Title
KR101419833B1 (ko) 화상형성장치, 서비스 시스템 및 OSGi 기반 서비스설치 방법
KR101456624B1 (ko) 화상형성장치, 및 웹 어플리케이션 설치 방법
US8527886B2 (en) Communication control device, communication control method, and communication control system
KR101410348B1 (ko) 주변 장치와 통신하는 정보처리장치, 방법과, 기억매체
JP5683205B2 (ja) 情報処理装置、情報処理装置を制御する制御方法、およびそのプログラム
JP5565346B2 (ja) プリンタ
KR101650731B1 (ko) 관리장치 및 관리장치의 장치드라이버 관리방법
US8301808B2 (en) Information processing apparatus, peripheral device control method, and storage medium
US20120170071A1 (en) Information processing apparatus, device information display method, and computer-readable storage medium
KR20120115902A (ko) 화상형성장치, OSGi 기반 서비스 설치 방법, OSGi 기반 서비스 제공 방법 및 컴퓨터 판독가능 기록매체
JP5728896B2 (ja) 印刷システム及びプログラム
EP2348402A1 (en) Image forming apparatus and method for providing local user interface thereof
US20080016189A1 (en) Host terminal to provide device configuration information, a method thereof, and devices to receive configuration information from the host terminal
JP5511483B2 (ja) 情報処理装置、制御方法、およびプログラム
EP2680139A1 (en) Management server, image forming apparatus, method of installing OSGI-based service, and computer-readable recording medium
JP5915010B2 (ja) 多機能装置、多機能プログラム、通信システム、及び通信方法
JP5697393B2 (ja) 情報処理装置、周辺装置制御方法及びプログラム
JP5699437B2 (ja) 情報処理システム、情報処理方法、情報処理装置、及びプログラム
JP2009110050A (ja) 情報処理装置、情報処理システム、表示制御方法、表示制御プログラム及び記録媒体
EP2685408A1 (en) Management server, image forming apparatus, method of providing open services gateway initiative (OSGI)-based service, and computer-readable recording medium
JP5738388B2 (ja) 周辺装置と通信する情報処理装置、方法、制御プログラム
JP5481925B2 (ja) ネットワークシステムおよび方法

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E601 Decision to refuse application