convergeecms-developers Mailing List for Converge
Editorial workflow system for media houses
Status: Beta
Brought to you by:
bigallan
You can subscribe to this list here.
| 2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
(7) |
Sep
(6) |
Oct
|
Nov
(13) |
Dec
|
|---|
|
From: Allan L. C. <al...@i2...> - 2012-11-22 11:13:03
|
Sure, it's a timer (TimerServiceBean) that runs every minute. When the timer receives an "EDITION" timer, it will call the method closeOverdueEditions() on the OutletFacade. Allan On Thu, Nov 22, 2012 at 1:34 PM, Muhammad Sabry Ali < Muh...@ho...> wrote: > Mr. Allan, > I hope you're doing great, I would like to ask you about the mechanism > that is responsible for automatically closing editions once their closing > date is reached, if you could please mention where you had it implemented, > I would be grateful. > > Regards > > -- > Muhammad Sabry Ali > Tel: 011 - 19 19 60 19 > > |
|
From: Muhammad S. A. <Muh...@ho...> - 2012-11-22 10:34:31
|
Mr. Allan,
I hope you're doing great, I would like to ask you about the
mechanism that is responsible for automatically closing editions once
their closing date is reached, if you could please mention where you had
it implemented, I would be grateful.
Regards
--
Muhammad Sabry Ali
Tel: 011 - 19 19 60 19
|
|
From: Muhammad S. A. <Muh...@ho...> - 2012-11-11 11:35:05
|
Yes I did manage to solve it, thanks Allan. Muhammad Sabry Ali Tel: 011 - 19 19 60 19 On 11/11/2012 12:43 PM, Allan Lykke Christensen wrote: > Seems that you solved the problem using @PostContruct? > > Allan > > On 11/11/2012, at 09.54, Muhammad Sabry Ali <Muh...@ho...> wrote: > >> Mr. Allan, >> If it's not much trouble I would like to ask you about the steps you've taken to implement the DialogAssignment class, 'cause I have this managed bean in which I try to inject @EJB NewsItemFacadeLocal newsItemFacade; and it gets evaluated correctly, but when I try to pass the newsItemFacade object to another POJO, it gets evaluated to null, I tried to trace what you did when implementing the DialogAssignment since it's also passed the @EJB injected objects, and it's a POJO, I guess. >> >> I made a post at Stackoverflow, describing my issue, >> http://stackoverflow.com/questions/13249908/using-ejb-injection-in-a-pojo >> >> Regards >> >> -- >> Muhammad Sabry Ali >> Tel: 011 - 19 19 60 19 >> > > |
|
From: Allan L. C. <al...@i2...> - 2012-11-11 10:44:06
|
Seems that you solved the problem using @PostContruct? Allan On 11/11/2012, at 09.54, Muhammad Sabry Ali <Muh...@ho...> wrote: > Mr. Allan, > If it's not much trouble I would like to ask you about the steps you've taken to implement the DialogAssignment class, 'cause I have this managed bean in which I try to inject @EJB NewsItemFacadeLocal newsItemFacade; and it gets evaluated correctly, but when I try to pass the newsItemFacade object to another POJO, it gets evaluated to null, I tried to trace what you did when implementing the DialogAssignment since it's also passed the @EJB injected objects, and it's a POJO, I guess. > > I made a post at Stackoverflow, describing my issue, > http://stackoverflow.com/questions/13249908/using-ejb-injection-in-a-pojo > > Regards > > -- > Muhammad Sabry Ali > Tel: 011 - 19 19 60 19 > |
|
From: Muhammad S. A. <Muh...@ho...> - 2012-11-11 08:54:56
|
Mr. Allan,
If it's not much trouble I would like to ask you about the steps
you've taken to implement the DialogAssignment class, 'cause I have this
managed bean in which I try to inject @EJB NewsItemFacadeLocal
newsItemFacade; and it gets evaluated correctly, but when I try to pass
the newsItemFacade object to another POJO, it gets evaluated to null, I
tried to trace what you did when implementing the DialogAssignment since
it's also passed the @EJB injected objects, and it's a POJO, I guess.
I made a post at Stackoverflow, describing my issue,
http://stackoverflow.com/questions/13249908/using-ejb-injection-in-a-pojo
Regards
--
Muhammad Sabry Ali
Tel: 011 - 19 19 60 19
|
|
From: Allan L. C. <al...@i2...> - 2012-11-06 14:51:50
|
Good observation. Yes, it makes sense to transform the NewsItemPlacement into a ContentItemPlacement. It would give greater flexibility for placing and distributing content. Another thing that will move into ContentItem is the meta data (concepts) as all Content (may) have meta data. I'll see if I can do the restructuring for the release planned at the end of the month. Allan On 06/11/2012, at 15.47, Muhammad Sabry Ali <Muh...@ho...> wrote: > First of all, I would like to say that I took a look at the concept of the Content-Item class, and that you removed the restriction that only news items are allowed to go through a workflow, and I think that you did a really great job. And if you may allow me to make a suggestion regarding the concept of placements represented in the NewsItemPlacements class, with its current definition, it is only possible for news items to have a placement, but what if we would like to introduce a new sort of publications, for instance ads, now ads do have a placement and they're assigned to an edition and a page,.. etc., with the current implementation this would not be possible, I would like to know your thoughts regarding such a scenario. > > Regards > > -- > Muhammad Sabry Ali > Tel: 011 - 19 19 60 19 > |
|
From: Muhammad S. A. <Muh...@ho...> - 2012-11-06 14:47:32
|
First of all, I would like to say that I took a look at the concept of the Content-Item class, and that you removed the restriction that only news items are allowed to go through a workflow, and I think that you did a really great job. And if you may allow me to make a suggestion regarding the concept of placements represented in the NewsItemPlacements class, with its current definition, it is only possible for news items to have a placement, but what if we would like to introduce a new sort of publications, for instance ads, now ads do have a placement and they're assigned to an edition and a page,.. etc., with the current implementation this would not be possible, I would like to know your thoughts regarding such a scenario. Regards -- Muhammad Sabry Ali Tel: 011 - 19 19 60 19 |
|
From: Allan L. C. <al...@i2...> - 2012-11-06 14:45:00
|
Ah right. I wonder how the old files ended up in your repo. Make sure that you execute "mvn clean install" on the parent project when you prepare ear files for deployment. Allan On 06/11/2012, at 15.43, Muhammad Sabry Ali <Muh...@ho...> wrote: > no, I didn't change any pom files, all I did was delete the following directory > > \.m2\repository\dk\i2m\converge\ > > it contained old project jars > > Muhammad Sabry Ali > Tel: 011 - 19 19 60 19 > > On 11/6/2012 4:37 PM, Allan Lykke Christensen wrote: >> Alright, what do you mean by deleting the maven dependencies. From where? Did you have to change a pom file or? >> >> Allan >> >> On 06/11/2012, at 15.35, Muhammad Sabry Ali <Muh...@ho...> wrote: >> >>> The file structure is as follows, >>> >>> converge.ear >>> |--- <default package> >>> | |--- converge-ejb.jar >>> | |--- converge-war.war >>> | |--- converge-ws.war >>> | >>> |--- META-INF >>> |--- META-INF.maven.dk.i2m.converge.converge-ear >>> |--- lib >>> >>> but I think I've got this problem resolved, I just deleted the maven dependencies under dk.converge and rebuilt the application and this error no longer shows. >>> >>> Muhammad Sabry Ali >>> Tel: 011 - 19 19 60 19 >>> >>> On 11/6/2012 4:17 PM, Allan Lykke Christensen wrote: >>>> Check that the EAR file produced from the Maven build process doesn't contain multiple JAR files for the converge-ejb.jar project. Perhaps you can paste a list of files inside your EAR file. >>>> >>>> Allan >>>> >>>> On 06/11/2012, at 15.14, Muhammad Sabry Ali <Muh...@ho...> wrote: >>>> >>>>> Hi Mr. Allan, thanks for the fast reply, but this shows up on a clean GF installation. >>>>> >>>>> Muhammad Sabry Ali >>>>> Tel: 011 - 19 19 60 19 >>>>> >>>>> On 11/6/2012 4:09 PM, Allan Lykke Christensen wrote: >>>>>> Hi Sabry, >>>>>> >>>>>> It's a class loading issue. Do you have any of the old Converge code in the GlassFish class path? >>>>>> >>>>>> P.S. Remember to post these issues on the mailing list. >>>>>> >>>>>> Allan >>>>>> >>>>>> >>>>>> On 06/11/2012, at 15.07, Muhammad Sabry Ali <Muh...@ho...> wrote: >>>>>> >>>>>>> Dear Mr. Allan, >>>>>>> It's been a while since I've last wrote to you, I hope you're doing all great, recently I've been trying to deploy the latest version of converge, but I get this weird error when I try to deploy the application, if you may have a look at it, and tell me what could be the possible cause I would be forever grateful. You'll find the error logs in the attached document, it consists of 3 error messages the first two show up together and the third one occasionally shows up. >>>>>>> The first two errors only show up when trying to deploy on GF 3.1.2, and the last one only shows up when deploying on GF 3.0.1. >>>>>>> >>>>>>> Regards. >>>>>>> >>>>>>> -- >>>>>>> Muhammad Sabry Ali >>>>>>> Tel: 011 - 19 19 60 19 >>>>>>> >>>>>>> <Error Report.txt> >>>> >> >> ------------------------------------------------------------------------------ >> LogMeIn Central: Instant, anywhere, Remote PC access and management. >> Stay in control, update software, and manage PCs from one command center >> Diagnose problems and improve visibility into emerging IT issues >> Automate, monitor and manage. Do more in less time with Central >> http://p.sf.net/sfu/logmein12331_d2d >> _______________________________________________ >> Convergeecms-developers mailing list >> Con...@li... >> https://lists.sourceforge.net/lists/listinfo/convergeecms-developers >> >> > |
|
From: Muhammad S. A. <Muh...@ho...> - 2012-11-06 14:43:17
|
no, I didn't change any pom files, all I did was delete the following directory \.m2\repository\dk\i2m\converge\ it contained old project jars Muhammad Sabry Ali Tel: 011 - 19 19 60 19 On 11/6/2012 4:37 PM, Allan Lykke Christensen wrote: > Alright, what do you mean by deleting the maven dependencies. From where? Did you have to change a pom file or? > > Allan > > On 06/11/2012, at 15.35, Muhammad Sabry Ali <Muh...@ho...> wrote: > >> The file structure is as follows, >> >> converge.ear >> |--- <default package> >> | |--- converge-ejb.jar >> | |--- converge-war.war >> | |--- converge-ws.war >> | >> |--- META-INF >> |--- META-INF.maven.dk.i2m.converge.converge-ear >> |--- lib >> >> but I think I've got this problem resolved, I just deleted the maven dependencies under dk.converge and rebuilt the application and this error no longer shows. >> >> Muhammad Sabry Ali >> Tel: 011 - 19 19 60 19 >> >> On 11/6/2012 4:17 PM, Allan Lykke Christensen wrote: >>> Check that the EAR file produced from the Maven build process doesn't contain multiple JAR files for the converge-ejb.jar project. Perhaps you can paste a list of files inside your EAR file. >>> >>> Allan >>> >>> On 06/11/2012, at 15.14, Muhammad Sabry Ali <Muh...@ho...> wrote: >>> >>>> Hi Mr. Allan, thanks for the fast reply, but this shows up on a clean GF installation. >>>> >>>> Muhammad Sabry Ali >>>> Tel: 011 - 19 19 60 19 >>>> >>>> On 11/6/2012 4:09 PM, Allan Lykke Christensen wrote: >>>>> Hi Sabry, >>>>> >>>>> It's a class loading issue. Do you have any of the old Converge code in the GlassFish class path? >>>>> >>>>> P.S. Remember to post these issues on the mailing list. >>>>> >>>>> Allan >>>>> >>>>> >>>>> On 06/11/2012, at 15.07, Muhammad Sabry Ali <Muh...@ho...> wrote: >>>>> >>>>>> Dear Mr. Allan, >>>>>> It's been a while since I've last wrote to you, I hope you're doing all great, recently I've been trying to deploy the latest version of converge, but I get this weird error when I try to deploy the application, if you may have a look at it, and tell me what could be the possible cause I would be forever grateful. You'll find the error logs in the attached document, it consists of 3 error messages the first two show up together and the third one occasionally shows up. >>>>>> The first two errors only show up when trying to deploy on GF 3.1.2, and the last one only shows up when deploying on GF 3.0.1. >>>>>> >>>>>> Regards. >>>>>> >>>>>> -- >>>>>> Muhammad Sabry Ali >>>>>> Tel: 011 - 19 19 60 19 >>>>>> >>>>>> <Error Report.txt> >>> > > ------------------------------------------------------------------------------ > LogMeIn Central: Instant, anywhere, Remote PC access and management. > Stay in control, update software, and manage PCs from one command center > Diagnose problems and improve visibility into emerging IT issues > Automate, monitor and manage. Do more in less time with Central > http://p.sf.net/sfu/logmein12331_d2d > _______________________________________________ > Convergeecms-developers mailing list > Con...@li... > https://lists.sourceforge.net/lists/listinfo/convergeecms-developers > > |
|
From: Allan L. C. <al...@i2...> - 2012-11-06 14:42:24
|
Check that the EAR file produced from the Maven build process doesn't contain multiple JAR files for the converge-ejb.jar project. Perhaps you can paste a list of files inside your EAR file. Allan On 06/11/2012, at 15.14, Muhammad Sabry Ali <Muh...@ho...> wrote: > Hi Mr. Allan, thanks for the fast reply, but this shows up on a clean GF installation. > > Muhammad Sabry Ali > Tel: 011 - 19 19 60 19 > > On 11/6/2012 4:09 PM, Allan Lykke Christensen wrote: >> Hi Sabry, >> >> It's a class loading issue. Do you have any of the old Converge code in the GlassFish class path? >> >> P.S. Remember to post these issues on the mailing list. >> >> Allan >> >> >> On 06/11/2012, at 15.07, Muhammad Sabry Ali <Muh...@ho...> wrote: >> >>> Dear Mr. Allan, >>> It's been a while since I've last wrote to you, I hope you're doing all great, recently I've been trying to deploy the latest version of converge, but I get this weird error when I try to deploy the application, if you may have a look at it, and tell me what could be the possible cause I would be forever grateful. You'll find the error logs in the attached document, it consists of 3 error messages the first two show up together and the third one occasionally shows up. >>> The first two errors only show up when trying to deploy on GF 3.1.2, and the last one only shows up when deploying on GF 3.0.1. >>> >>> Regards. >>> >>> -- >>> Muhammad Sabry Ali >>> Tel: 011 - 19 19 60 19 >>> >>> <Error Report.txt> >> >> > |
|
From: Allan L. C. <al...@i2...> - 2012-11-06 14:37:20
|
Alright, what do you mean by deleting the maven dependencies. From where? Did you have to change a pom file or? Allan On 06/11/2012, at 15.35, Muhammad Sabry Ali <Muh...@ho...> wrote: > The file structure is as follows, > > converge.ear > |--- <default package> > | |--- converge-ejb.jar > | |--- converge-war.war > | |--- converge-ws.war > | > |--- META-INF > |--- META-INF.maven.dk.i2m.converge.converge-ear > |--- lib > > but I think I've got this problem resolved, I just deleted the maven dependencies under dk.converge and rebuilt the application and this error no longer shows. > > Muhammad Sabry Ali > Tel: 011 - 19 19 60 19 > > On 11/6/2012 4:17 PM, Allan Lykke Christensen wrote: >> Check that the EAR file produced from the Maven build process doesn't contain multiple JAR files for the converge-ejb.jar project. Perhaps you can paste a list of files inside your EAR file. >> >> Allan >> >> On 06/11/2012, at 15.14, Muhammad Sabry Ali <Muh...@ho...> wrote: >> >>> Hi Mr. Allan, thanks for the fast reply, but this shows up on a clean GF installation. >>> >>> Muhammad Sabry Ali >>> Tel: 011 - 19 19 60 19 >>> >>> On 11/6/2012 4:09 PM, Allan Lykke Christensen wrote: >>>> Hi Sabry, >>>> >>>> It's a class loading issue. Do you have any of the old Converge code in the GlassFish class path? >>>> >>>> P.S. Remember to post these issues on the mailing list. >>>> >>>> Allan >>>> >>>> >>>> On 06/11/2012, at 15.07, Muhammad Sabry Ali <Muh...@ho...> wrote: >>>> >>>>> Dear Mr. Allan, >>>>> It's been a while since I've last wrote to you, I hope you're doing all great, recently I've been trying to deploy the latest version of converge, but I get this weird error when I try to deploy the application, if you may have a look at it, and tell me what could be the possible cause I would be forever grateful. You'll find the error logs in the attached document, it consists of 3 error messages the first two show up together and the third one occasionally shows up. >>>>> The first two errors only show up when trying to deploy on GF 3.1.2, and the last one only shows up when deploying on GF 3.0.1. >>>>> >>>>> Regards. >>>>> >>>>> -- >>>>> Muhammad Sabry Ali >>>>> Tel: 011 - 19 19 60 19 >>>>> >>>>> <Error Report.txt> >>>> >> >> > |
|
From: Muhammad S. A. <Muh...@ho...> - 2012-11-06 14:36:08
|
The file structure is as follows,
converge.ear
|--- <default package>
| |--- converge-ejb.jar
| |--- converge-war.war
| |--- converge-ws.war
|
|--- META-INF
|--- META-INF.maven.dk.i2m.converge.converge-ear
|--- lib
but I think I've got this problem resolved, I just deleted the maven
dependencies under dk.converge and rebuilt the application and this
error no longer shows.
Muhammad Sabry Ali
Tel: 011 - 19 19 60 19
On 11/6/2012 4:17 PM, Allan Lykke Christensen wrote:
> Check that the EAR file produced from the Maven build process doesn't contain multiple JAR files for the converge-ejb.jar project. Perhaps you can paste a list of files inside your EAR file.
>
> Allan
>
> On 06/11/2012, at 15.14, Muhammad Sabry Ali <Muh...@ho...> wrote:
>
>> Hi Mr. Allan, thanks for the fast reply, but this shows up on a clean GF installation.
>>
>> Muhammad Sabry Ali
>> Tel: 011 - 19 19 60 19
>>
>> On 11/6/2012 4:09 PM, Allan Lykke Christensen wrote:
>>> Hi Sabry,
>>>
>>> It's a class loading issue. Do you have any of the old Converge code in the GlassFish class path?
>>>
>>> P.S. Remember to post these issues on the mailing list.
>>>
>>> Allan
>>>
>>>
>>> On 06/11/2012, at 15.07, Muhammad Sabry Ali <Muh...@ho...> wrote:
>>>
>>>> Dear Mr. Allan,
>>>> It's been a while since I've last wrote to you, I hope you're doing all great, recently I've been trying to deploy the latest version of converge, but I get this weird error when I try to deploy the application, if you may have a look at it, and tell me what could be the possible cause I would be forever grateful. You'll find the error logs in the attached document, it consists of 3 error messages the first two show up together and the third one occasionally shows up.
>>>> The first two errors only show up when trying to deploy on GF 3.1.2, and the last one only shows up when deploying on GF 3.0.1.
>>>>
>>>> Regards.
>>>>
>>>> --
>>>> Muhammad Sabry Ali
>>>> Tel: 011 - 19 19 60 19
>>>>
>>>> <Error Report.txt>
>>>
>
>
|
|
From: Muhammad S. A. <Muh...@ho...> - 2012-11-06 14:14:58
|
Hi Mr. Allan, thanks for the fast reply, but this shows up on a clean GF installation. Muhammad Sabry Ali Tel: 011 - 19 19 60 19 On 11/6/2012 4:09 PM, Allan Lykke Christensen wrote: > Hi Sabry, > > It's a class loading issue. Do you have any of the old Converge code in the GlassFish class path? > > P.S. Remember to post these issues on the mailing list. > > Allan > > > On 06/11/2012, at 15.07, Muhammad Sabry Ali <Muh...@ho...> wrote: > >> Dear Mr. Allan, >> It's been a while since I've last wrote to you, I hope you're doing all great, recently I've been trying to deploy the latest version of converge, but I get this weird error when I try to deploy the application, if you may have a look at it, and tell me what could be the possible cause I would be forever grateful. You'll find the error logs in the attached document, it consists of 3 error messages the first two show up together and the third one occasionally shows up. >> The first two errors only show up when trying to deploy on GF 3.1.2, and the last one only shows up when deploying on GF 3.0.1. >> >> Regards. >> >> -- >> Muhammad Sabry Ali >> Tel: 011 - 19 19 60 19 >> >> <Error Report.txt> > > |
|
From: Muhammad S. A. <Muh...@ho...> - 2012-09-18 08:43:02
|
Thanks Mr. Allan, that is helpful. Muhammad Sabry Ali Tel: 011 - 19 19 60 19 On 9/17/2012 9:33 PM, Allan Lykke Christensen wrote: > Good question Sabry. You can actually do it in both ways. The approach to chose depends on your taste as well as the nature of the stories that you are publishing. My recommendation is to have a separate Outlet for Facebook (or any publishing destination) if the content to be published on Facebook is not a complete copy of an edition of another Outlet. For example, if you have an outlet called "My Newspaper", and ALL stories published in this outlet should automatically be published on Facebook, then it would be a waste to have a separate Outlet. You could just as well build your plug-in to take all the stories in "My Newspaper" and publish it on Facebook. However, if you want to hand pick stories for Facebook from "My Newspaper" and other outlets, then I recommend that you have a separate outlet called Facebook. By having a separate outlet you have more flexibility in terms of what you want to publish. In both cases you'd want to implement it as an EditionAction and/or WorkflowAction. > > Hope that helps. > > Allan > > > On 17/09/2012, at 21.26, Muhammad Sabry Ali <Muh...@ho...> wrote: > >> Dear Mr. Allan, >> >> I was wondering if I am to create a new plug-in to publish the news items on Facebook, what exactly should Facebook mean to the system, I mean should I continue with the plug-in creation and treating Facebook as no more than an external object from the system, much as you do with Joomla, or should I treat it differently as an Outlet, and for each new-item that has a placement on that outlet is to be published on it. I would like to know your thoughts regarding such a scenario. >> >> Regards >> >> -- >> Muhammad Sabry Ali >> Tel: 011 - 19 19 60 19 >> > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Convergeecms-developers mailing list > Con...@li... > https://lists.sourceforge.net/lists/listinfo/convergeecms-developers > > |
|
From: Allan L. C. <al...@i2...> - 2012-09-17 20:04:24
|
Good question Sabry. You can actually do it in both ways. The approach to chose depends on your taste as well as the nature of the stories that you are publishing. My recommendation is to have a separate Outlet for Facebook (or any publishing destination) if the content to be published on Facebook is not a complete copy of an edition of another Outlet. For example, if you have an outlet called "My Newspaper", and ALL stories published in this outlet should automatically be published on Facebook, then it would be a waste to have a separate Outlet. You could just as well build your plug-in to take all the stories in "My Newspaper" and publish it on Facebook. However, if you want to hand pick stories for Facebook from "My Newspaper" and other outlets, then I recommend that you have a separate outlet called Facebook. By having a separate outlet you have more flexibility in terms of what you want to publish. In both cases you'd want to implement it as an EditionAction and/or WorkflowAction. Hope that helps. Allan On 17/09/2012, at 21.26, Muhammad Sabry Ali <Muh...@ho...> wrote: > Dear Mr. Allan, > > I was wondering if I am to create a new plug-in to publish the news items on Facebook, what exactly should Facebook mean to the system, I mean should I continue with the plug-in creation and treating Facebook as no more than an external object from the system, much as you do with Joomla, or should I treat it differently as an Outlet, and for each new-item that has a placement on that outlet is to be published on it. I would like to know your thoughts regarding such a scenario. > > Regards > > -- > Muhammad Sabry Ali > Tel: 011 - 19 19 60 19 > |
|
From: Muhammad S. A. <Muh...@ho...> - 2012-09-17 19:27:06
|
Dear Mr. Allan,
I was wondering if I am to create a new plug-in to publish the news
items on Facebook, what exactly should Facebook mean to the system, I
mean should I continue with the plug-in creation and treating Facebook
as no more than an external object from the system, much as you do with
Joomla, or should I treat it differently as an Outlet, and for each
new-item that has a placement on that outlet is to be published on it. I
would like to know your thoughts regarding such a scenario.
Regards
--
Muhammad Sabry Ali
Tel: 011 - 19 19 60 19
|
|
From: Muhammad S. A. <Muh...@ho...> - 2012-09-17 09:32:54
|
Thanks Mr. Allan for you're efforts and great work Muhammad Sabry Ali Tel: 011 - 19 19 60 19 On 9/16/2012 9:55 PM, Allan Lykke Christensen wrote: > Alright Sabry. Here is a short tutorial on creating an Edition Action. > > *How to create a plug-in for Converge 1.1.3* > > There are five types of plug-ins in Converge: > > * Edition Actions > * Workflow Step Actions > * Workflow Validators > * Catalogue Hooks > * Decoders > > > /In Converge 1.2 these are being replaced by a Plugin Action that acts > upon different types of objects. All the the plug-ins above can be > implemented as a Plugin Action unifying the process for creating > plug-ins. Anyway, in this short tutorial I will describe the four > types of plug-ins and how to implement an Edition Action./ > > *PLUG-IN TYPES* > > Edition Actions are pieces of code that are executed on an edition of > an outlet or on individual news item placements in an edition. The > Edition Action can be set to automatically execute when an edition > closes (an edition is automatically closed when its 'close date and > time" has reached. If the close date and time is not set for > an edition the edition actions will not be executed until the edition > is manually closed). Edition Actions are suitable for implementing > routines that must occur on all items in an edition, such as uploading > all stories to a website. > > Workflow Step Actions are pieces of code that are when the user > selects a given workflow step. A Workflow Step Action only operates on > the news item for which the workflow step was selected. Workflow Step > Actions are suitable for implementing routines that must occur when > the state of a single story changes. > > Workflow Validators are pieces of code that can be used to implement > validation when news items change from one state to another. A > validator can check that the content in a news item is correct before > allowing it to be sent to the next actor. > > Catalogue hooks are pieces of code that are executed when uploading > media items to a catalogue. Catalogue hooks can be set to execute > manually, upon uploading a new media item rendition, or uploading > uploading an updated media item rendition. Catalogue hooks are > suitable for implementing routines that must update or generate > renditions based on the originally uploaded rendition, such as > generating a thumbnail or optimising an image. > > Decoders are pieces of code that interpret a news source and makes it > available in the newswire section. Common decoders found in Converge > are Webfeed (for RSS and ATOM feeds), NewsML 1, NewsML 1.2, and e-mail > decoders. > > *CREATING AN EDITION ACTION* > > To create a new edition action you can follow this recipe: > > 1. Create a new edition action Maven project > 2. Include converge-core as a provided dependency > 3. Implement the Edition Action interface > 4. Compile and build the Maven project > 5. Include the output JAR in the Converge directory in GlassFish > 6. Restart GlassFish > > > /Note, In 1.2 plug-ins can be loaded at run-time either by adding the > JAR file to a pre-configured directory or by upload directly in the > back-end./ > > _1) Create a new edition action Maven project_ > > Use the Maven archetype:generate goal to create a new Maven project, e.g. > > mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app > -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false > > > _2) Include converge-core as a provided dependency_ > > Open pom.xml and add the converge-core dependency under <dependencies> > > <dependency> > <artifactId>converge-core</artifactId> > <groupId>dk.i2m.converge</groupId> > <version>1.1.3</version> > <scope>provided</scope> > </dependency> > > Since the dependency is not available in the public Maven repository > you must add the maven repository of Interactive Media Management to > the file. > > <repositories> > <repository> > <id>m2.i2m.dk <http://m2.i2m.dk></id> > <name>Interactive Media Management Maven Repository</name> > <url>http://m2.i2m.dk</url> > </repository> > </repositories> > > Confirm that the dependency is loaded correctly by executing > > mvn dependency:resolve > > _3) Implementing the Edition Action interface_ > > As an example below is an annotated version of the UrlCallbackAction. > The UrlCallbackAction simply calls a specified URL when an edition has > closed. This could be used to notify a third party system that an > edition is ready for consumption. > > First an Edition action must be annotated as an OutletAction. Without > the annotation Converge will not be able to recognise the plugin. > > Secondly the plug-in must implement the EditionAction interface. An > empty plug-in looks like this: > > @dk.i2m.converge.core.annotations.OutletAction > public class UrlCallbackAction implements EditionAction { > > @Override > public void execute(PluginContext ctx, Edition edition, > OutletEditionAction action) { > } > > @Override > public void executePlacement(PluginContext ctx, NewsItemPlacement > placement, > Edition edition, OutletEditionAction action) { > } > > @Override > public boolean isSupportEditionExecute() { > } > > @Override > public boolean isSupportPlacementExecute() { > } > > @Override > public Map<String, String> getAvailableProperties() { > } > > @Override > public String getName() { > } > > @Override > public String getAbout() { > } > > @Override > public String getDescription() { > } > > @Override > public String getVendor() { > } > > @Override > public Date getDate() { > } > > @Override > public ResourceBundle getBundle() { > } > } > > All of the methods above must be implemented. Luckily most of them are > simple to implement, e.g. > > @Override > public String getName() { > return "Name of my plug-in"' > } > > @Override > public String getAbout() { > return "Help text for someone who wants to use the plug-in"; > } > > @Override > public String getDescription() { > return "Show description shown in the list of Plug-ins"; > } > > @Override > public String getVendor() { > return "Your name (or your company)"; > } > > @Override > public Date getDate() { > return Calendar.getInstance().getTime(); // Return the date when the > plug-in was released > } > > For Internationalisation you must implement getBundle which will be > used to fetch internationalised strings for your plugin > > private ResourceBundle bundle = > ResourceBundle.getBundle("my.company.plugin.Messages"); > > @Override > public ResourceBundle getBundle() { > return bundle; > } > > If you want the administrator to configure your plug-in you must > provide the properties that they can use to configure the plug-in. > This is done by providing a Map in getAvailableProperties. It's > common to specify the properties in an inner enum that can be used to > fetch the properties at a later stage, e.g. > > @dk.i2m.converge.core.annotations.OutletAction > public class UrlCallbackAction implements EditionAction { > ... > > private Map<String, String> availableProperties = null; > > public enum Property { > CALLBACK_URL, TIMEOUT > } > > @Override > public Map<String, String> getAvailableProperties() { > if (availableProperties == null) { > availableProperties = new LinkedHashMap<String, String>(); > for (Property p : Property.values()) { > availableProperties.put(bundle.getString(p.name()), p.name()); > } > } > return availableProperties; > } > } > > > In the example above we have specified two properties, CALLBACK_URL, > i.e. the URL that should be called when the edition close and TIMEOUT, > i.e. the timeout in ms to wait for a response from the URL. If the > timeout is not there you may end up HTTP connection leaks. > > The map returned in getAvailableProperties have the name of the > property set in the key (using the bundle) and the value used for > storing in the database as the value. In the bundle you would have > these entries: > > CALLBACK_URL=Callback URL > TIMEOUT=Timeout > > Then we have to tell Converge whether this plug-in can be used on an > edition and/or the news item placements in the edition. Note, a news > item placement is a single story, whereas edition contains all the > stories in the edition. > > We specify this using isSupportEditionExecute and > isSupportPlacementExecute respectively. In our case we only want the > plug-in to work for a whole edition so we specify the following: > > @Override > public boolean isSupportEditionExecute() { > return true; > } > > @Override > public boolean isSupportPlacementExecute() { > return false; > } > > Since we don't support news item placements we don't have to implement > the executor for placements: > > @Override > public void executePlacement(PluginContext ctx, NewsItemPlacement > placement, > Edition edition, OutletEditionAction action) { > throw new UnsupportedOperationException("Not supported"); > } > > The only thing remaining is to execute the code that will be executed > when an edition closes, i.e. the execute(PluginContext, Edition, > OutletEditionAction) method. > > First let's examine the input. PluginContext gives you an Enterprise > Bean for accessing Converge. You'll find many methods on this bean for > finding news items, renditions, creating editions, indexing items in > the search engine, and so on. > > Edition is the edition that has closed and as such the object > containing all the news items to act upon. > > OutletEditionAction is the action executed. This object contains the > configure of the plug-in, i.e. the URL and TIMEOUT specified by the > administrator. > > The first thing to do is to verify that necessary properties were set: > > Map<String, String> properties = action.getPropertiesAsMap(); > > if (!properties.containsKey(Property.CALLBACK_URL.name())) { > LOG.log(Level.WARNING, "{0} property missing from properties", > Property.CALLBACK_URL.name()); > return; > } > > If the URL was not set there is no point in executing the rest of the > plug-in. > > For properties that was not set by the user it is a good idea to > provide a default value. So if the user has not provided a default > timeout we will set it a default timeout in the plug-in. > > int timeout = DEFAULT_TIMEOUT; > if (properties.containsKey(Property.TIMEOUT.name())) { > String rawTimeout = ""; > try { > rawTimeout = properties.get(Property.TIMEOUT.name()); > timeout = Integer.valueOf(rawTimeout); > } catch (Exception e) { > LOG.log(Level.WARNING, "Invalid value set for {0}: {1}. > Using {2}", new Object[]{Property.TIMEOUT.name(), rawTimeout, timeout}); > } > } > > Next, we fetch the URL set by the administrator. Since the URL may > contain information from the Edition (such as the unique id of the > edition) we use the StringTemplate api to interpolate the URL set with > the edition passed to the plug-in. > > // Replace template tags in URL > String rawUrl = properties.get(Property.CALLBACK_URL.name()); > StringTemplate template = new StringTemplate(rawUrl, > DefaultTemplateLexer.class); > template.setAttribute("edition", edition); > String url = template.toString(); > > > Now that we have the URL, we use the Apache commons HTTP Client to > call the URL. > > HttpClient client = new HttpClient(); > client.getHttpConnectionManager().getParams().setConnectionTimeout( > timeout); > HttpMethod method = new GetMethod(url); > method.setFollowRedirects(true); > > try { > client.executeMethod(method); > } catch (HttpException ex) { > LOG.log(Level.WARNING, "Could not execute callback URL. " > + ex. > getMessage(), ex); > } catch (IOException ex) { > LOG.log(Level.WARNING, "Could not execute callback URL. " > + ex. > getMessage(), ex); > } finally { > method.releaseConnection(); > } > > That's all. You can find the full version of the plug-in the Git > repository. > > _4) Compile and build the Maven project_ > > Build the edition action by executing > > mvn clean install > > If it builds successfully you'll find the plug-in packaged in a JAR > file in the target/ directory > > > _5) Include the output JAR in the Converge directory in GlassFish_ > > Take the JAR file and copy it to the classpath of Converge inside > GlassFish (applications/j2ee-apps/converge/lib) > > _6) Restart GlassFish_ > > %GLASSFISH_HOME%/bin/asadmin stop-domain domain1 > %GLASSFISH_HOME%/bin/asadmin start-domain domain1 > > > Enjoy! > > Allan > > On 29/08/2012, at 22.44, Allan Lykke Christensen <al...@i2... > <mailto:al...@i2...>> wrote: > >> Hi Muhammad, >> >> Certainly. I'm on a mission in Kenya at the moment. When I get back >> to my office I'll write up an explanation on how to implement plug-ins. >> >> Allan >> >> On 29/08/2012, at 09.50, Muhammad Sabry Ali >> <Muh...@ho... >> <mailto:Muh...@ho...>> wrote: >> >>> Dear Mr. Allan, >>> I was wondering if you could explain the structure of the >>> plug-ins and if I'm to create a new one what are the steps that >>> should be taken. >>> >>> Regards >>> >>> -- >>> Muhammad Sabry Ali >>> Tel: 011 - 19 19 60 19 >>> >> > > > > ------------------------------------------------------------------------------ > Everyone hates slow websites. So do we. > Make your web apps faster with AppDynamics > Download AppDynamics Lite for free today: > http://ad.doubleclick.net/clk;258768047;13503038;j? > http://info.appdynamics.com/FreeJavaPerformanceDownload.html > > > _______________________________________________ > Convergeecms-developers mailing list > Con...@li... > https://lists.sourceforge.net/lists/listinfo/convergeecms-developers |
|
From: Allan L. C. <al...@i2...> - 2012-09-16 20:18:19
|
Alright Sabry. Here is a short tutorial on creating an Edition Action.
How to create a plug-in for Converge 1.1.3
There are five types of plug-ins in Converge:
Edition Actions
Workflow Step Actions
Workflow Validators
Catalogue Hooks
Decoders
In Converge 1.2 these are being replaced by a Plugin Action that acts upon different types of objects. All the the plug-ins above can be implemented as a Plugin Action unifying the process for creating plug-ins. Anyway, in this short tutorial I will describe the four types of plug-ins and how to implement an Edition Action.
PLUG-IN TYPES
Edition Actions are pieces of code that are executed on an edition of an outlet or on individual news item placements in an edition. The Edition Action can be set to automatically execute when an edition closes (an edition is automatically closed when its ‘close date and time” has reached. If the close date and time is not set for an edition the edition actions will not be executed until the edition is manually closed). Edition Actions are suitable for implementing routines that must occur on all items in an edition, such as uploading all stories to a website.
Workflow Step Actions are pieces of code that are when the user selects a given workflow step. A Workflow Step Action only operates on the news item for which the workflow step was selected. Workflow Step Actions are suitable for implementing routines that must occur when the state of a single story changes.
Workflow Validators are pieces of code that can be used to implement validation when news items change from one state to another. A validator can check that the content in a news item is correct before allowing it to be sent to the next actor.
Catalogue hooks are pieces of code that are executed when uploading media items to a catalogue. Catalogue hooks can be set to execute manually, upon uploading a new media item rendition, or uploading uploading an updated media item rendition. Catalogue hooks are suitable for implementing routines that must update or generate renditions based on the originally uploaded rendition, such as generating a thumbnail or optimising an image.
Decoders are pieces of code that interpret a news source and makes it available in the newswire section. Common decoders found in Converge are Webfeed (for RSS and ATOM feeds), NewsML 1, NewsML 1.2, and e-mail decoders.
CREATING AN EDITION ACTION
To create a new edition action you can follow this recipe:
Create a new edition action Maven project
Include converge-core as a provided dependency
Implement the Edition Action interface
Compile and build the Maven project
Include the output JAR in the Converge directory in GlassFish
Restart GlassFish
Note, In 1.2 plug-ins can be loaded at run-time either by adding the JAR file to a pre-configured directory or by upload directly in the back-end.
1) Create a new edition action Maven project
Use the Maven archetype:generate goal to create a new Maven project, e.g.
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
2) Include converge-core as a provided dependency
Open pom.xml and add the converge-core dependency under <dependencies>
<dependency>
<artifactId>converge-core</artifactId>
<groupId>dk.i2m.converge</groupId>
<version>1.1.3</version>
<scope>provided</scope>
</dependency>
Since the dependency is not available in the public Maven repository you must add the maven repository of Interactive Media Management to the file.
<repositories>
<repository>
<id>m2.i2m.dk</id>
<name>Interactive Media Management Maven Repository</name>
<url>http://m2.i2m.dk</url>
</repository>
</repositories>
Confirm that the dependency is loaded correctly by executing
mvn dependency:resolve
3) Implementing the Edition Action interface
As an example below is an annotated version of the UrlCallbackAction. The UrlCallbackAction simply calls a specified URL when an edition has closed. This could be used to notify a third party system that an edition is ready for consumption.
First an Edition action must be annotated as an OutletAction. Without the annotation Converge will not be able to recognise the plugin.
Secondly the plug-in must implement the EditionAction interface. An empty plug-in looks like this:
@dk.i2m.converge.core.annotations.OutletAction
public class UrlCallbackAction implements EditionAction {
@Override
public void execute(PluginContext ctx, Edition edition, OutletEditionAction action) {
}
@Override
public void executePlacement(PluginContext ctx, NewsItemPlacement placement,
Edition edition, OutletEditionAction action) {
}
@Override
public boolean isSupportEditionExecute() {
}
@Override
public boolean isSupportPlacementExecute() {
}
@Override
public Map<String, String> getAvailableProperties() {
}
@Override
public String getName() {
}
@Override
public String getAbout() {
}
@Override
public String getDescription() {
}
@Override
public String getVendor() {
}
@Override
public Date getDate() {
}
@Override
public ResourceBundle getBundle() {
}
}
All of the methods above must be implemented. Luckily most of them are simple to implement, e.g.
@Override
public String getName() {
return “Name of my plug-in”’
}
@Override
public String getAbout() {
return “Help text for someone who wants to use the plug-in”;
}
@Override
public String getDescription() {
return “Show description shown in the list of Plug-ins”;
}
@Override
public String getVendor() {
return “Your name (or your company)”;
}
@Override
public Date getDate() {
return Calendar.getInstance().getTime(); // Return the date when the plug-in was released
}
For Internationalisation you must implement getBundle which will be used to fetch internationalised strings for your plugin
private ResourceBundle bundle = ResourceBundle.getBundle("my.company.plugin.Messages");
@Override
public ResourceBundle getBundle() {
return bundle;
}
If you want the administrator to configure your plug-in you must provide the properties that they can use to configure the plug-in. This is done by providing a Map in getAvailableProperties. It’s common to specify the properties in an inner enum that can be used to fetch the properties at a later stage, e.g.
@dk.i2m.converge.core.annotations.OutletAction
public class UrlCallbackAction implements EditionAction {
...
private Map<String, String> availableProperties = null;
public enum Property {
CALLBACK_URL, TIMEOUT
}
@Override
public Map<String, String> getAvailableProperties() {
if (availableProperties == null) {
availableProperties = new LinkedHashMap<String, String>();
for (Property p : Property.values()) {
availableProperties.put(bundle.getString(p.name()), p.name());
}
}
return availableProperties;
}
}
In the example above we have specified two properties, CALLBACK_URL, i.e. the URL that should be called when the edition close and TIMEOUT, i.e. the timeout in ms to wait for a response from the URL. If the timeout is not there you may end up HTTP connection leaks.
The map returned in getAvailableProperties have the name of the property set in the key (using the bundle) and the value used for storing in the database as the value. In the bundle you would have these entries:
CALLBACK_URL=Callback URL
TIMEOUT=Timeout
Then we have to tell Converge whether this plug-in can be used on an edition and/or the news item placements in the edition. Note, a news item placement is a single story, whereas edition contains all the stories in the edition.
We specify this using isSupportEditionExecute and isSupportPlacementExecute respectively. In our case we only want the plug-in to work for a whole edition so we specify the following:
@Override
public boolean isSupportEditionExecute() {
return true;
}
@Override
public boolean isSupportPlacementExecute() {
return false;
}
Since we don’t support news item placements we don’t have to implement the executor for placements:
@Override
public void executePlacement(PluginContext ctx, NewsItemPlacement placement,
Edition edition, OutletEditionAction action) {
throw new UnsupportedOperationException("Not supported");
}
The only thing remaining is to execute the code that will be executed when an edition closes, i.e. the execute(PluginContext, Edition, OutletEditionAction) method.
First let’s examine the input. PluginContext gives you an Enterprise Bean for accessing Converge. You’ll find many methods on this bean for finding news items, renditions, creating editions, indexing items in the search engine, and so on.
Edition is the edition that has closed and as such the object containing all the news items to act upon.
OutletEditionAction is the action executed. This object contains the configure of the plug-in, i.e. the URL and TIMEOUT specified by the administrator.
The first thing to do is to verify that necessary properties were set:
Map<String, String> properties = action.getPropertiesAsMap();
if (!properties.containsKey(Property.CALLBACK_URL.name())) {
LOG.log(Level.WARNING, "{0} property missing from properties",
Property.CALLBACK_URL.name());
return;
}
If the URL was not set there is no point in executing the rest of the plug-in.
For properties that was not set by the user it is a good idea to provide a default value. So if the user has not provided a default timeout we will set it a default timeout in the plug-in.
int timeout = DEFAULT_TIMEOUT;
if (properties.containsKey(Property.TIMEOUT.name())) {
String rawTimeout = "";
try {
rawTimeout = properties.get(Property.TIMEOUT.name());
timeout = Integer.valueOf(rawTimeout);
} catch (Exception e) {
LOG.log(Level.WARNING, "Invalid value set for {0}: {1}. Using {2}", new Object[]{Property.TIMEOUT.name(), rawTimeout, timeout});
}
}
Next, we fetch the URL set by the administrator. Since the URL may contain information from the Edition (such as the unique id of the edition) we use the StringTemplate api to interpolate the URL set with the edition passed to the plug-in.
// Replace template tags in URL
String rawUrl = properties.get(Property.CALLBACK_URL.name());
StringTemplate template = new StringTemplate(rawUrl,
DefaultTemplateLexer.class);
template.setAttribute("edition", edition);
String url = template.toString();
Now that we have the URL, we use the Apache commons HTTP Client to call the URL.
HttpClient client = new HttpClient();
client.getHttpConnectionManager().getParams().setConnectionTimeout(
timeout);
HttpMethod method = new GetMethod(url);
method.setFollowRedirects(true);
try {
client.executeMethod(method);
} catch (HttpException ex) {
LOG.log(Level.WARNING, "Could not execute callback URL. " + ex.
getMessage(), ex);
} catch (IOException ex) {
LOG.log(Level.WARNING, "Could not execute callback URL. " + ex.
getMessage(), ex);
} finally {
method.releaseConnection();
}
That’s all. You can find the full version of the plug-in the Git repository.
4) Compile and build the Maven project
Build the edition action by executing
mvn clean install
If it builds successfully you’ll find the plug-in packaged in a JAR file in the target/ directory
5) Include the output JAR in the Converge directory in GlassFish
Take the JAR file and copy it to the classpath of Converge inside GlassFish (applications/j2ee-apps/converge/lib)
6) Restart GlassFish
%GLASSFISH_HOME%/bin/asadmin stop-domain domain1
%GLASSFISH_HOME%/bin/asadmin start-domain domain1
Enjoy!
Allan
On 29/08/2012, at 22.44, Allan Lykke Christensen <al...@i2...> wrote:
> Hi Muhammad,
>
> Certainly. I'm on a mission in Kenya at the moment. When I get back to my office I'll write up an explanation on how to implement plug-ins.
>
> Allan
>
> On 29/08/2012, at 09.50, Muhammad Sabry Ali <Muh...@ho...> wrote:
>
>> Dear Mr. Allan,
>> I was wondering if you could explain the structure of the plug-ins and if I'm to create a new one what are the steps that should be taken.
>>
>> Regards
>>
>> --
>> Muhammad Sabry Ali
>> Tel: 011 - 19 19 60 19
>>
>
|
|
From: Allan L. C. <al...@i2...> - 2012-09-11 18:25:36
|
Converge is among the finalists for the African News Innovation Challenge. By being a finalist we are given the opportunity to attend a TechCamp in Zanzibar, in partnership with the Tech@State program. At the TechCamp we will refine and defend our proposal for the future of Converge in consultation with some of the world’s leading media technology strategists, including experts from the U.K. Guardian’s data team, Mozilla’s OpenNews initiative, Google, previous Knight News Challenge winners, and the World Association of Newspapers. Whether or not Converge is selected as a winner, it will be an awesome opportunity to explore the potential of Converge. You can read more about the finalists on the ANIC website: http://africannewschallenge.org/meet-the-finalists/ Allan |
|
From: Allan L. C. <al...@i2...> - 2012-08-29 20:44:59
|
Hi Muhammad, Certainly. I'm on a mission in Kenya at the moment. When I get back to my office I'll write up an explanation on how to implement plug-ins. Allan On 29/08/2012, at 09.50, Muhammad Sabry Ali <Muh...@ho...> wrote: > Dear Mr. Allan, > I was wondering if you could explain the structure of the plug-ins and if I'm to create a new one what are the steps that should be taken. > > Regards > > -- > Muhammad Sabry Ali > Tel: 011 - 19 19 60 19 > |
|
From: Muhammad S. A. <Muh...@ho...> - 2012-08-29 07:50:49
|
Dear Mr. Allan,
I was wondering if you could explain the structure of the
plug-ins and if I'm to create a new one what are the steps that should
be taken.
Regards
--
Muhammad Sabry Ali
Tel: 011 - 19 19 60 19
|
|
From: Allan L. C. <al...@i2...> - 2012-08-22 21:21:29
|
Hi Sabry, When you configure the Resize Image Rendition Hook in a Catalogue you must remember to specify which Rendition that should be resized and which rendition that should be generated. For example, Say the rendition uploaded by users is the High Resolution rendition, and you want to create a thumbnail of the image when they upload in the Thumbnail rendition, you would have values similar to the attached screenshot. Note that the reference to the rendition must be the name of the rendition. To have it generate the thumbnail every time the original is updated, simply put the value "true" in the "Enable on update" property. Hope that helps. Allan On 22/08/2012, at 18.35, Muhammad Sabry Ali <Muh...@ho...> wrote: > Dear Mr. Allan, > > I was wondering if you could describe the mechanisms behind the Re-size Image Hook , as every time I execute it, I get in the log file " Executing Batch Hook for Media Item # ", but when I check the repository I can see no new files generated. And I was also wondering if it's possible to fire such a re-size event every time a new image is uploaded, because only the original rendition is created at the repository. > > Regards > > -- > Muhammad Sabry Ali > Tel: 011 - 19 19 60 19 > |
|
From: Muhammad S. A. <Muh...@ho...> - 2012-08-22 16:35:47
|
Dear Mr. Allan,
I was wondering if you could describe the mechanisms behind the
Re-size Image Hook , as every time I execute it, I get in the log file "
Executing Batch Hook for Media Item # ", but when I check the repository
I can see no new files generated. And I was also wondering if it's
possible to fire such a re-size event every time a new image is
uploaded, because only the original rendition is created at the repository.
Regards
--
Muhammad Sabry Ali
Tel: 011 - 19 19 60 19
|
|
From: Muhammad S. A. <Muh...@ho...> - 2012-08-14 09:31:22
|
I was wondering if you could explain the properties needed to configure the OutputEditionAction on some outlet, and if I'm to make a new plugin what shoud I do? -- Muhammad Sabry Ali Tel: 011 - 19 19 60 19 |
|
From: Allan L. C. <al...@i2...> - 2012-08-13 19:26:18
|
The sprint for version 1.2.0-B3 has been defined. The sprint is rather short hence the limited issues in the backlog. The main purpose of the sprint is to implement support for automated upload to Joomla and Drupal using PluginActions. The expected release date of 1.2.0-B3 is Saturday, 18th August. The sprint plan can be found here: http://issues.i2m.dk/projects/converge/roadmap Allan |