mirror of https://github.com/perkeep/perkeep.git
Merge "twitter importer: meaningful names for permanodes"
This commit is contained in:
commit
814dad41d4
|
@ -186,6 +186,12 @@ func (im *imp) Run(ctx *importer.RunContext) error {
|
|||
},
|
||||
}
|
||||
|
||||
rootNode := r.RootNode()
|
||||
if rootNode.Attr("title") == "" {
|
||||
screenName := acctNode.Attr(importer.AcctAttrUserName)
|
||||
rootNode.SetAttr("title", fmt.Sprintf("%s's Tweets", screenName))
|
||||
}
|
||||
|
||||
userID := acctNode.Attr(importer.AcctAttrUserID)
|
||||
if userID == "" {
|
||||
return errors.New("UserID hasn't been set by account setup.")
|
||||
|
@ -246,11 +252,7 @@ func (r *run) importTweets(userID string) error {
|
|||
maxId := ""
|
||||
continueRequests := true
|
||||
|
||||
tweetsNode, err := r.getTopLevelNode("tweets", "Tweets")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
tweetsNode := r.RootNode()
|
||||
numTweets := 0
|
||||
sawTweet := map[string]bool{}
|
||||
|
||||
|
@ -351,10 +353,7 @@ func tweetsFromZipFile(zf *zip.File) (tweets []*zipTweetItem, err error) {
|
|||
func (r *run) importTweetsFromZip(userID string, zr *zip.Reader) error {
|
||||
log.Printf("Processing zip file with %d files", len(zr.File))
|
||||
|
||||
tweetsNode, err := r.getTopLevelNode("tweets", "Tweets")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
tweetsNode := r.RootNode()
|
||||
|
||||
var (
|
||||
gate = syncutil.NewGate(tweetsAtOnce)
|
||||
|
@ -381,7 +380,7 @@ func (r *run) importTweetsFromZip(userID string, zr *zip.Reader) error {
|
|||
})
|
||||
}
|
||||
}
|
||||
err = grp.Err()
|
||||
err := grp.Err()
|
||||
log.Printf("zip import of tweets: %d total, err = %v", total, err)
|
||||
return err
|
||||
}
|
||||
|
@ -497,17 +496,6 @@ func (r *run) importTweet(parent *importer.Object, tweet tweetItem, viaAPI bool)
|
|||
return !changes, err
|
||||
}
|
||||
|
||||
func (r *run) getTopLevelNode(path string, title string) (*importer.Object, error) {
|
||||
tweets, err := r.RootNode().ChildPathObject(path)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := tweets.SetAttr("title", title); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return tweets, nil
|
||||
}
|
||||
|
||||
// TODO(mpl): move to an api.go when we it gets bigger.
|
||||
|
||||
type userInfo struct {
|
||||
|
@ -623,6 +611,7 @@ func (im *imp) ServeCallback(w http.ResponseWriter, r *http.Request, ctx *import
|
|||
importer.AcctAttrUserID, u.ID,
|
||||
importer.AcctAttrName, u.Name,
|
||||
importer.AcctAttrUserName, u.ScreenName,
|
||||
"title", fmt.Sprintf("%s's Twitter Account", u.ScreenName),
|
||||
); err != nil {
|
||||
httputil.ServeError(w, r, fmt.Errorf("Error setting attribute: %v", err))
|
||||
return
|
||||
|
|
Loading…
Reference in New Issue