本文整理汇总了Golang中github.com/darkhelmet/tinderizer/job.Job.Progress方法的典型用法代码示例。如果您正苦于以下问题:Golang Job.Progress方法的具体用法?Golang Job.Progress怎么用?Golang Job.Progress使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/darkhelmet/tinderizer/job.Job
的用法示例。
在下文中一共展示了Job.Progress方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Process
func (e *Extractor) Process(job J.Job) {
job.Progress("Extracting...")
defer e.wg.Done()
resp, err := e.extractRetry(job.Url, job.Content)
if err != nil {
e.error(job, "%s", err)
return
}
doc, err := rewriteAndDownloadImages(job.Root(), resp.Content)
if err != nil {
e.error(job, "HTML parsing failed: %s", err)
return
}
job.Doc = doc
if resp.Title != "" {
job.Title = resp.Title
}
job.Domain = resp.Domain
if resp.Author != nil {
job.Author = *resp.Author
}
job.Progress("Extraction complete...")
e.Output <- job
}
示例2: Process
func (c *Cleaner) Process(job J.Job) {
defer c.wg.Done()
if job.Friendly != "" {
job.Progress(job.Friendly)
}
os.RemoveAll(job.Root())
}
示例3: Process
func (e *Emailer) Process(job J.Job) {
job.Progress("Sending to your Kindle...")
defer e.wg.Done()
if st, err := os.Stat(job.MobiFilePath()); err != nil {
e.error(job, FriendlyMessage, "Something weird happened. Mobi is missing: %s", err)
return
} else {
if st.Size() > MaxAttachmentSize {
blacklist.Blacklist(job.Url)
e.error(job, "Sorry, this article is too big to send!", "Attachment was too big (%d bytes)", st.Size())
return
}
}
m := &postmark.Message{
From: e.from,
To: job.Email,
Subject: Subject,
TextBody: fmt.Sprintf("Straight to your Kindle! %s: %s", job.Title, job.Url),
}
if err := m.Attach(job.MobiFilePath()); err != nil {
e.error(job, FriendlyMessage, "failed attaching file: %s", err)
return
}
resp, err := e.postmark.Send(m)
if resp == nil {
e.error(job, FriendlyMessage, "failed sending email: %s", err)
return
}
switch resp.ErrorCode {
case 0:
// All is well
case 422:
e.error(job, FriendlyMessage, "failed sending email: %s: %s", err, resp.Message)
return
case 300:
e.error(job, "Your email appears invalid. Please try carefully remaking the bookmarklet.", "emailer: Email inactive or invalid")
return
case 406:
e.error(job, "Your email appears to have bounced. Amazon likes to bounce emails sometimes, and my provider 'deactivates' the email. For now, try changing your Personal Documents Email. I'm trying to find a proper solution for this :(", "emailer: Email inactive or invalid")
return
default:
e.error(job, FriendlyMessage, "Something bizarre happened with Postmark: %s", resp.Message)
return
}
job.Progress("All done! Grab your Kindle and hang tight!")
cache.Set(resp.MessageID, job.Url, OneHour)
recordDurationStat(job)
e.Output <- job
}
示例4: Process
func (k *Kindlegen) Process(job J.Job) {
job.Progress("Optimizing for Kindle...")
defer k.wg.Done()
if err := writeHTML(job); err != nil {
k.error(job, err.Error())
return
}
cmd := exec.Command(k.binary, []string{job.HTMLFilename()}...)
cmd.Dir = job.Root()
out, err := cmd.CombinedOutput()
if !fileExists(job.MobiFilePath()) {
k.error(job, "failed running kindlegen: %s {output=%s}", err, out)
return
}
job.Progress("Optimization complete...")
k.Output <- job
}