ref: 66cf3bdc77d43f92333cd48a351d59d7a5abe1f8
parent: efb564775afd319b953a386cf9e8cc1aca0b585e
author: bep <bjorn.erik.pedersen@gmail.com>
date: Wed Mar 18 21:55:49 EDT 2015
Rename interface contentRewriter to contentTransformer Is is a much better name.
--- a/transform/absurl.go
+++ b/transform/absurl.go
@@ -18,7 +18,7 @@
}
func absURLFromReplacer(ar *absURLReplacer) (trs []link, err error) {- trs = append(trs, func(rw contentRewriter) {+ trs = append(trs, func(rw contentTransformer) {ar.replaceInHTML(rw)
})
return
@@ -34,7 +34,7 @@
}
func absURLInXMLFromReplacer(ar *absURLReplacer) (trs []link, err error) {- trs = append(trs, func(rw contentRewriter) {+ trs = append(trs, func(rw contentTransformer) {ar.replaceInXML(rw)
})
return
--- a/transform/absurlreplacer.go
+++ b/transform/absurlreplacer.go
@@ -176,11 +176,11 @@
}
}
-func doReplace(rw contentRewriter, matchers []absURLMatcher) {+func doReplace(ct contentTransformer, matchers []absURLMatcher) { lexer := &contentlexer{- content: rw.Content(),
- w: rw,
+ content: ct.Content(),
+ w: ct,
prefixLookup: &prefixes{pr: mainPrefixRunes},matchers: matchers}
@@ -226,10 +226,10 @@
}
-func (au *absURLReplacer) replaceInHTML(rw contentRewriter) {- doReplace(rw, au.htmlMatchers)
+func (au *absURLReplacer) replaceInHTML(ct contentTransformer) {+ doReplace(ct, au.htmlMatchers)
}
-func (au *absURLReplacer) replaceInXML(rw contentRewriter) {- doReplace(rw, au.xmlMatchers)
+func (au *absURLReplacer) replaceInXML(ct contentTransformer) {+ doReplace(ct, au.xmlMatchers)
}
--- a/transform/chain.go
+++ b/transform/chain.go
@@ -6,7 +6,7 @@
"io"
)
-type trans func(rw contentRewriter)
+type trans func(rw contentTransformer)
type link trans
@@ -20,14 +20,14 @@
return make([]link, 0, 20)
}
-// contentRewriter is an interface that enables rotation
+// contentTransformer is an interface that enables rotation
// of pooled buffers in the transformer chain.
-type contentRewriter interface {+type contentTransformer interface {Content() []byte
io.Writer
}
-// Implements contentRewriter
+// Implements contentTransformer
// Content is read from the from-buffer,
// and rewritten to to the to-buffer.
type fromToBuffer struct {--- a/transform/chain_test.go
+++ b/transform/chain_test.go
@@ -56,18 +56,18 @@
}
func TestChaingMultipleTransformers(t *testing.T) {- f1 := func(rw contentRewriter) {- rw.Write(bytes.Replace(rw.Content(), []byte("f1"), []byte("f1r"), -1))+ f1 := func(ct contentTransformer) {+ ct.Write(bytes.Replace(ct.Content(), []byte("f1"), []byte("f1r"), -1))}
- f2 := func(rw contentRewriter) {- rw.Write(bytes.Replace(rw.Content(), []byte("f2"), []byte("f2r"), -1))+ f2 := func(ct contentTransformer) {+ ct.Write(bytes.Replace(ct.Content(), []byte("f2"), []byte("f2r"), -1))}
- f3 := func(rw contentRewriter) {- rw.Write(bytes.Replace(rw.Content(), []byte("f3"), []byte("f3r"), -1))+ f3 := func(ct contentTransformer) {+ ct.Write(bytes.Replace(ct.Content(), []byte("f3"), []byte("f3r"), -1))}
- f4 := func(rw contentRewriter) {- rw.Write(bytes.Replace(rw.Content(), []byte("f4"), []byte("f4r"), -1))+ f4 := func(ct contentTransformer) {+ ct.Write(bytes.Replace(ct.Content(), []byte("f4"), []byte("f4r"), -1))}
tr := NewChain(f1, f2, f3, f4)
--- a/transform/livereloadinject.go
+++ b/transform/livereloadinject.go
@@ -5,7 +5,7 @@
"github.com/spf13/viper"
)
-func LiveReloadInject(rw contentRewriter) {+func LiveReloadInject(ct contentTransformer) { match := []byte("</body>") port := viper.GetString("port") replace := []byte(`<script>document.write('<script src="http://'@@ -12,12 +12,12 @@
+ (location.host || 'localhost').split(':')[0]+ ':` + port + `/livereload.js?mindelay=10"></'
+ 'script>')</script></body>`)
- newcontent := bytes.Replace(rw.Content(), match, replace, -1)
+ newcontent := bytes.Replace(ct.Content(), match, replace, -1)
- if len(newcontent) == len(rw.Content()) {+ if len(newcontent) == len(ct.Content()) { match := []byte("</BODY>")- newcontent = bytes.Replace(rw.Content(), match, replace, -1)
+ newcontent = bytes.Replace(ct.Content(), match, replace, -1)
}
- rw.Write(newcontent)
+ ct.Write(newcontent)
}
--
⑨