久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

结合提供者模式解析Jenkins源码国际化的实现

發布時間:2024/8/26 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 结合提供者模式解析Jenkins源码国际化的实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

關鍵字:提供者模式,設計模式,github,gerrit,源碼學習,jenkins,國際化,maven高級,maven插件

本篇文章的源碼展示部分由于長度問題不會全部粘貼展示,或許只是直接提及,需要了解的朋友請fork in github,文中會給出源碼地址。

源碼的研究策略

從這篇文章開始,陸續要展開一些源碼分析的內容,既然確立了這個目標,就要尋找研究源碼的策略,經過各方面的取經和自己的總結,接下來我將采取的策略為:

  • 源碼內容:
    • 從最早的release版本開始,任何偉大而復雜的工程可能都源自于“helloworld”,從最初的版本(如果你能找到的話)開始看,可能會降低很多難度,隨著工程的不斷升級,根據release歷史,可以跟蹤到每次大的升級更新內容。
  • 源碼庫:
    • 采用github。作為世界最大的源碼庫,github使用非常方便,并且我也在上面有很多自己的repo。可以直接fork官方源碼然后加入自己的調試研究過程,可以記錄下每一次的更新與變化,我想這也是github除了保存自己的代碼以外最為重要的功能之一。
  • 程序入口:
    • 本地工程運行,按圖索驥,編譯調試,理解設計模式的一些常見命名方式。
  • 分析架構:
    • 結合官方手冊(注意要與當前源碼release版本相一致)get started, API,使用UML,分析核心功能模塊的實現。
  • 造輪子:
    • 修改源碼工程,添加自己的注釋,增加自己的代碼,以支持模擬業務場景。同時要保存自己的github提交歷史,這也是學習過程的記錄。
  • 在以下文章分析過程中,我會通過這種格式來記錄每一個我突發奇想的可以用來實驗Jenkins源碼的業務需求,這些需求會在未來繼續研究源碼的文章中進行實現。

    搭建源碼開發環境

    一、github本地配置修改

    由于本地存在其他git庫的配置并且他們集成了gerrit,所以如果我想在本地配置一套github的開發環境,必須要做些改變。如果你的機器是純凈的,大可不必有此顧慮,直接配置成全局變量即可。

    git配置文件

    git的默認配置是在用戶home目錄下的.gitconfig文件,這個文件我是不可以修改的,否則會影響現有庫的使用。而在每個git工程中還有.git目錄,這下面的config就是該項目的本地Git配置,相當于復寫home目錄下的.gitconfig文件,home目錄下的對應的是global配置,項目本地的對應的是local配置。

    gerrit

    • 代碼審核服務器,一種免費、開放源代碼的代碼審查軟件,使用網頁界面。
    • 同一個團隊的軟件程序員,可以相互審閱彼此修改后的程序代碼,決定是否能夠提交,退回或者繼續修改。
    • 通過鉤子hooks/commit-msg程序,將每次推送的提交附屬上唯一的Change-Id,從而轉化為一個一個的代碼審核任務。
    • 代碼審核工作流,完全在網頁上面操作,其中涉及到comments,Code-Review,Verified,submit,merge等操作。
    • gerrit同時也是一個git的版本庫,一般用于維護項目的主干分支,各開發者可以將本地庫與其進行pull,merge等操作。

    本地git配置文件修改

    1.刪除hooks

    目標確定為git工程下的.git目錄,首先刪除其中的hooks文件夾(hooks默認為空,如果安裝了gerrit,每次clone時會同步下載hooks/commit-msg鉤子程序),要知道gerrit的集成主要就靠這個鉤子,這個鉤子的作用就是每次在你提交代碼時,默認附屬上一串Change-Id,這樣一來就將你的每一次提交建立了一個主鍵,通過這個主鍵去review,merge等

    2.配置用戶名和郵件

    在git工程下直接配置上git config user. name 和user.email即可使用當前配置而不是用戶目錄下的.gitconfig的默認配置。請參考Setting your username in Git

    3.git提供ssh和http兩種交互方式

    這里采用http的方式,它可以繞過防火墻和網絡代理,很方便,但是每次與遠端庫交互的時候都要驗證賬戶和密碼。請參考remote url method

    • ssh

    ssh的方式要在遠端庫中配置上本地的id_rsa.pub,從而實現免密認證。

    • http

    http的話,直接使用credential.helper store來存儲用戶名密碼,可避免日后必須始終輸入賬號密碼的麻煩。具體操作如下:

    evsward@lwbsPC:~/work/github/mainbase$ git config credential.helper store evsward@lwbsPC:~/work/github/mainbase$ git push origin master Username for 'https://github.com': evsward Password for 'https://evsward@github.com': Everything up-to-date evsward@lwbsPC:~/work/github/mainbase$ git push origin master Everything up-to-date

    http修改存儲密碼的方式以上方式會在根目錄下建立一個.git-credentials的文件明文存儲密碼。雖然可以指定該文件的訪問權限,我仍然覺得很不安全,所以采用另外一種方式——存儲于緩存。請參考Caching your GitHub password in Git,延長默認緩存時間從15分鐘改為1小時。如下方式執行以后,會在用戶根目錄下生成一個文件夾.git-credential-cache,里面存儲一個socket的設備文件,用于緩存用戶名密碼,通常手段無法讀取這個文件,采取緩存用戶名密碼的方式比起上一種直接存儲的方式要安全一些。(注意:當你的系統仍需連接其他git庫的時候,參數不要使用global,全部設置為local即默認)另外,同一個github下的不同項目只要存儲過一次賬號密碼以后,任何項目在其本地執行

    git config credential.helper 'cache --timeout=3600'

    不必初始化存入密碼,即可立即免密使用,因為同一個github賬戶下的項目訪問時的賬戶密碼是相同的,默認都是從用戶根目錄下的.git-credential-cache去讀取,因此,同一個github賬戶初始化過程只需要一次即可。當然了,超過了我們設定的緩存時限1個小時,就需要重新輸入了。下面是具體操作方式:

    evsward@lwbsPC:~/work/github/mainbase$ git config credential.helper 'cache --timeout=3600' evsward@lwbsPC:~/work/github/mainbase$ git push origin master Username for 'https://github.com': evsward Password for 'https://evsward@github.com': Everything up-to-date evsward@lwbsPC:~/work/github/mainbase$ git push origin master Everything up-to-date

    git修改歷史提交記錄

    一般來說是直接reset + commitId,然后git push -f <remote> <branch>到遠程庫直接刪除commitId以后的所有提交歷史,請參考git如何修改已提交的commit

    二、Jenkins項目源碼

    1.首先fork Jenkins源碼到自己的賬戶,并下載到本地。
    2.同步更新,Configuring a remote for a fork -> Syncing a fork

    Jenkins 業務構想之一:監控Jenkins 源代碼,如果有任何更新,則fetch到本地,然后同步推送至我的github庫。

    3.開始檢查jenkins 的release版本,找到第一個發布在github上的release版本1.312,可惜的是這個歷史版本因為太古老只留下了zip的下載方式,直接下載下來,jenkins-1.312.zip。
    4.github網頁端新建一個repo起名為jenkins-1.312,將這個空項目clone到本地,然后導入前面下載的jenkins-1.312.zip解壓出來的文件。
    5.注意新clone下來的github項目一定要先刪除hooks,配置好user. name,email以及credential,然后push到github遠端。
    6.eclipse通過檢測pom文件將jenkins1.312以maven項目導入。

    三、Maven構建源碼工程

    本文就細細地將研究過程中遇到的所有可記錄的知識點都寫下來。

    配置Maven

    1.去Maven下載一個zip包,我下載的是Maven3.5.2
    2.解壓縮,打開conf/setting.xml,修改localRepository到你預設的本地Maven資源庫。
    3.修改mirror,添加阿里云maven庫

    <mirrors><mirror><id>nexus-aliyun</id><mirrorOf>*</mirrorOf><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public</url></mirror></mirrors>

    4.在eclipse中配置上剛剛下載并修改好的maven地址,同時別忘記更改user-setting。
    5.linux下配置maven環境變量(Windows的配置這里不再贅述),在用戶根目錄下打開.profile,增加export MAVEN_HOME=/home/CORPUSERS/evsward/work/apache-maven-3.5.2,并將$MAVEN_HOME/bin添加到PATH中去。
    6.terminal下輸入mvn -v測試。

    開始構建

    eclipse中直接使用clean project來觸發maven重構工程,但是發生錯誤,我們剛配置的阿里云的maven庫似乎連接不上,我按圖索驥,使用瀏覽器對該url路徑進行了檢查,確定了這個文件確實是存在于阿里云上面的。

    下面我在terminal中,定位到項目路徑下,使用命令去測試mvn install(安裝artifacts,compile是編譯工程代碼,package是為現有工程打包并上傳到maven庫),錯誤仍舊是那樣。所以目前的問題是瀏覽器可以訪問,但是terminal和eclipse無法訪問。

    我又嘗試了在terminal中直接wget,仍然是好使的,我將vpn配發的proxy路徑配置到$MAVEN_HOME/conf/setting.xml中以后,開始工作了!

    <proxies><proxy><id>A</id><active>true</active><protocol>http</protocol><username>evsward</username><password>xxxxxxx</password><host>proxy.xxxx.net</host><port>8080</port></proxy><proxy><id>B</id><active>true</active><protocol>https</protocol><username>evsward</username><password>xxxxxxx</password><host>proxy.xxxxxx.net</host><port>8080</port></proxy></proxies>

    阿里云的Maven庫還是非常全的!

    我們先terminal本地install一下,最終Maven安裝artifacts結果如下:

    [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary: [INFO] [INFO] Hudson main module ................................. SUCCESS [04:48 min] [INFO] Hudson remoting layer .............................. SUCCESS [01:58 min] [INFO] Hudson CLI ......................................... SUCCESS [02:31 min] [INFO] Hudson core ........................................ FAILURE [05:33 min] [INFO] Hudson Maven PluginManager interceptor ............. SKIPPED [INFO] Hudson Maven CLI agent ............................. SKIPPED [INFO] Maven Integration plugin ........................... SKIPPED [INFO] Hudson war ......................................... SKIPPED [INFO] Test harness for Hudson and plugins ................ SKIPPED [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 22:49 min [INFO] Finished at: 2017-11-22T17:12:58+08:00 [INFO] Final Memory: 30M/164M [INFO] ------------------------------------------------------------------------

    總共耗時近23分鐘,只有一項Hudson core編譯失敗了,其他均成功了。

    Jenkins 業務構想之二:每次的源碼更新,本地要自動執行mvn install去編譯,這樣就為我們真正的開發節省了很多時間。

    現在去查看一下我們的repo目錄:

    evsward@lwbsPC:~/work/maven-repo$ ls ant commons-digester geronimo-spec net antlr commons-discovery httpunit org aopalliance commons-el javanettasks oro args4j commons-fileupload javax plexus asm commons-httpclient jaxen qdox avalon-framework commons-io jdom slide backport-util-concurrent commons-jelly jfree stax ch commons-lang jline velocity classworlds commons-logging jtidy xalan com commons-pool junit xerces commons-beanutils commons-validator log4j xml-apis commons-cli de logkit xom commons-codec dom4j mx4j xpp3 commons-collections doxia nekohtmlevsward@lwbsPC:~/work/maven-repo$ du -sh 115M

    可以看到,原來空空如也的本地repo已經被填入了115M的不同的依賴包,這些都是從之前我們配置的mirror——阿里云下載過來的。

    下面我們轉戰到IDE,刷新一下項目,工程在Maven的幫助下自動進入安裝階段。

    • 失敗一次

    可惜最終還是沒有build成功,報錯信息顯示有些依賴包在阿里云上面無法找到,看來阿里云還是不夠全啊。

    • 失敗二次

    于是我將conf/setting.xml中的mirror內容注釋掉了,重新運行mvn package從maven中央庫下載,build又開始工作了!(之前加的mirror不是當時無法download的根源問題,根源問題已解決,是proxy的問題)

    • 失敗N次

    失敗已經持續了10個小時,轉去翻官方文檔。

    重新出發

    由于沒有依據官方文檔,自己在摸索中構建導致了很多問題,無法順利構建成功,這一次依據官方文檔,Build Jenkins,我來嘗試follow一下。第一個改變就是我們丟棄了jenkins-1.312版本,直接使用jenkin最新版本,這是因為最新版本的文檔和代碼都是非常齊全,適合我們分析與研究。嫌麻煩的同學不用擔心,我會將所有的構建步驟貼在下面。
    1.構建準備

    使用jdk7+,maven3

    2.環境變量配置

    alias jdk7='export JAVA_HOME=/home/CORPUSERS/evsward/work/java/jdk1.7.0_80_x64 ; export PATH=$JAVA_HOME/bin:$PATH'

    3.maven 基礎構建

    $ cd jenkins $ mvn -Plight-test install

    4.找到作者的github

    If you want simply to have the jenkins.war as fast as possible (without test execution), run:mvn clean install -pl war -am -DskipTestsThe WAR file will be in war/target/jenkins.war (you can play with it) You can deactivate test-harness execution with -Dskip-test-harness

    最終,terminal build成功!

    [INFO] ------------------------------------------------------------------------ [INFO] Reactor Summary: [INFO] [INFO] Jenkins main module ................................ SUCCESS [ 0.888 s] [INFO] Jenkins cli ........................................ SUCCESS [ 12.555 s] [INFO] Jenkins core ....................................... SUCCESS [01:31 min] [INFO] Jenkins war ........................................ SUCCESS [01:09 min] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 02:54 min [INFO] Finished at: 2017-11-23T13:13:35+08:00 [INFO] Final Memory: 86M/488M [INFO] ------------------------------------------------------------------------

    在目錄war/target/jenkins.war中已經在本地成功生成了jenkins.war包。但是環境依然有問題,有很多紅叉在項目里面。

    localizer

    打開整個jenkins工程,感覺亂七八糟頭有點大,不知道從何開始研究,本地跑起來剛剛生成的war包沒問題,但是調試起來還有很多障礙,我們就先從這些紅叉叉開始研究吧。localizer也是由kohsuke(Hudson&Jenkins的作者)寫的一個屬性文件本地化工具。先來介紹一下它的功能,它可以將屬性文件*.properties按照國際化語言設定規則轉成一個常量類文件,可以直接在其他類中調用。我們把jenkins.war包解壓縮,找到cli-2.92-SNAPSHOT.war,繼續解壓縮,進入到cli-2.92-SNAPSHOT/hudson/cli/client目錄下,可以發現:

    Messages_bg.properties Messages_es.properties Messages.properties Messages.class Messages_fr.properties Messages_pt_BR.properties Messages_da.properties Messages_it.properties Messages_zh_TW.properties Messages_de.properties Messages_ja.properties

    這里面除了我們編寫的各個國家地區的語言屬性文件,還有一個Message.class并不是我們寫的,而是Maven生成的,這非常方便,因為屬性文件作為靜態文件,并不是類需要動態編譯,所以常量類文件可以完全被屬性文件取代,同時又能擁有常量類文件的調用便攜性。下面我們來分析一下這個工具。

    1.首先去kohsuke的github庫中下載該項目
    每次下載都要執行以下操作(這僅針對于我的環境):

    evsward@lwbsPC:~/work/github/localizer/.git$ rm -rf hooks evsward@lwbsPC:~/work/github/localizer/.git$ vi config evsward@lwbsPC:~/work/github/localizer/.git$ cd.. evsward@lwbsPC:~/work/github/localizer$ git config credential.helper 'cache --timeout=3600' evsward@lwbsPC:~/work/github/localizer$ git config user.name "evsward" evsward@lwbsPC:~/work/github/localizer$ git config user.email "xxxxx@xxx.com"

    2.導入項目到eclipse中去
    查看核心類ResourceBundleHolder類,可以看到上面的holder.format方法:

    /*** Formats a resource specified by the given key by using the default locale*/public String format(String key, Object... args) {return MessageFormat.format(get(LocaleProvider.getLocale()).getString(key), args);}

    其中get(LocaleProvider.getLocale())方法在類的上方也給出了。

    Jenkins業務構想之三:開發一個處理國際語言本地化的工具系統

    每種語言都有一個文件后綴,例如漢語是zh,這里是全世界關于這個語言后綴的列表。取其中ISO 639-1的值。

    源碼相關知識,對象的軟引用SoftReference,弱引用WeakReference。弱引用HashMap:WeakHashMap。強引用也是類加載器引用a classloader refernce

    3.介紹一種緩存的使用方法

    private static final Map<Class<?>, WeakReference<ResourceBundleHolder>> cache =new WeakHashMap<Class<?>, WeakReference<ResourceBundleHolder>> ();public synchronized static ResourceBundleHolder get(Class<?> clazz) {WeakReference<ResourceBundleHolder> entry = cache.get(clazz);if (entry != null) {ResourceBundleHolder rbh = entry.get();if (rbh != null) return rbh;}ResourceBundleHolder rbh = new ResourceBundleHolder(clazz);cache.put(clazz, new WeakReference<ResourceBundleHolder>(rbh));return rbh;}

    分析一波:

    • 這個緩存cache的類型是WeakHashMap,即弱引用的哈希Map,并且它的key為Class類,值為弱引用的ResourceBundleHolder對象。這種緩存的定義就決定了它在垃圾回收器需要的時候可以隨時自動清除針對此對象的所有弱引用。
    • 我們來看下面的get(Class)方法,首先它是上了鎖的,這是必須的,因為要避免緩存同時被多線程操作造成內部數據混亂的結果。然后,它也是static的,所以這個方法是屬于類的而不是對象的,比起對象屬性,它的作用域更加廣,也保證了緩存的唯一性。
    • 另外,這個緩存在系統資源緊張的時候會被隨時清理,就會出現你去按key查找卻查不到值的情況??催M去方法體,先獲得key為某Class的值,判斷其是否為空,不為空則取出,為空則說明要么是該key從來沒被存入過,要么是被垃圾回收器清理掉了,無論哪種情況,我們再存入一遍即可。注意以該Class為key的值,就是ResourceBundleHolder的弱引用對象。(所以構造器ResourceBundleHolder(Class o)雖然被丟棄,但內部仍要使用。
    /*** @param owner* The name of the generated resource bundle class.* @deprecated* Use {@link #get(Class)}*/public ResourceBundleHolder(Class<?> owner) {this.owner = owner;}

    4.本地化文件的集合容器

    private transient final Map<Locale,ResourceBundle> bundles = new ConcurrentHashMap<Locale,ResourceBundle>();

    java 的transient關鍵字為我們提供了便利,你只需要實現Serilizable接口,將不需要序列化的屬性前添加關鍵字transient,序列化對象的時候,這個屬性就不會序列化到指定的目的地中。

    ConcurrentHashMap 是支持并發的HashMap。Locale和ResourceBundle都是Jdk中的關于國際化的類。

  • ResourceBundle,資源包包含特定于語言環境的對象。當程序需要一個特定于語言環境的資源時(如 String),程序可以從適合當前用戶語言環境的資源包中加載它。
  • Locale,Locale 對象表示了特定的地理、政治和文化地區。上面提到的眾多國家地區語言都可以從這個類中取到。
  • 下面是ResourceBundleHolder最核心的方法get(Locale locale),

    public ResourceBundle get(Locale locale) {ResourceBundle rb = bundles.get(locale);// 根據地區情況獲取其資源包if (rb != null)return rb;synchronized (this) {// 如果未獲取到locale對應的資源包,則為其上鎖并創建資源包rb = bundles.get(locale);if (rb != null)return rb;// 進鎖以后再查一遍。還是沒有則繼續Locale next = getBaseLocale(locale);// 擴大一級搜索范圍String s = locale.toString();// 這個owner就是Message類,拼串以后就是例如Message_zh.properties,getResource查找帶有給定名稱的資源。URL res = owner.getResource(owner.getSimpleName() + (s.length() > 0 ? '_' + s : "") + ".properties");if (res != null) {// 找到對應屬性文件try {URLConnection uc = res.openConnection();uc.setUseCaches(false);InputStream is = uc.getInputStream();// ResourceBundleImpl是自己實現的一個可根據 InputStream// 創建屬性資源包。構造器是繼承實現ResourceBundleImpl bundle = new ResourceBundleImpl(is);is.close();rb = bundle;if (next != null)// 多線程操作,當涉及事務操作的時候要先做檢查// ResourceBundle類可以根據parent屬性找到相近的屬性文件,而不是查不到就直接返回null.bundle.setParent(get(next));bundles.put(locale, bundle);} catch (IOException e) {MissingResourceException x = new MissingResourceException("Unable to load resource " + res,owner.getName(), null);x.initCause(e);throw x;}} else {if (next != null)bundles.put(locale, rb = get(next));elsethrow new MissingResourceException("No resource was found for " + owner.getName(), owner.getName(),null);}}return rb;}

    總結一下ResourceBundleHolder類,就是它是一個序列化的本地化資源數據的緩存,緩存中存儲了多個key為類,值為該類為owner的ResourceBundleHolder類的鍵值對。而每個ResourceBundleHolder對象會維護一個不序列化且外部不可修改的成員屬性二級緩存Map,該Map會存儲每次查詢過的本地化文件數據,如果沒有則會新插入數據。在插入新數據時,要根據本地化參數Locale去查找相近的屬性文件,然后將該文件存入資源包作為前面說的那個Map的值。

    5.Message類
    按圖索驥,下面來分析上面提到的那個由Maven自動生成的Message類,我們將它反編譯看一下:

    package hudson.cli.client;import org.jvnet.localizer.Localizable; import org.jvnet.localizer.ResourceBundleHolder; import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.NoExternalUse;@Restricted({ NoExternalUse.class }) public class Messages {private static final ResourceBundleHolder holder = ResourceBundleHolder.get(Messages.class);public Messages() {}public static String CLI_Usage() {return holder.format("CLI.Usage", new Object[0]);}public static Localizable _CLI_Usage() {return new Localizable(holder, "CLI.Usage", new Object[0]);}public static String CLI_NoURL() {return holder.format("CLI.NoURL", new Object[0]);}public static Localizable _CLI_NoURL() {return new Localizable(holder, "CLI.NoURL", new Object[0]);}public static String CLI_NoSuchFileExists(Object arg0) {return holder.format("CLI.NoSuchFileExists", new Object[] { arg0 });}public static Localizable _CLI_NoSuchFileExists(Object arg0) {return new Localizable(holder, "CLI.NoSuchFileExists", new Object[] { arg0 });}public static String CLI_VersionMismatch() {return holder.format("CLI.VersionMismatch", new Object[0]);}public static Localizable _CLI_VersionMismatch() {return new Localizable(holder, "CLI.VersionMismatch", new Object[0]);} }

    這個類是直接使用我們剛剛分析過的ResourceBundleHolder類,其中還調用到了Localizable類,下面來分析一下Localizable類,然后再繞回來繼續分析它。

    6.Localizable類
    Localizable類就是一個針對本地資源包國家地區數據的一個封裝類,該類有一個ResourceBundleHolder的私有成員對象。然后比較重要的就是它的toString(Locale locale)方法:

    public String toString(Locale locale) {try {return MessageFormat.format(holder.get(locale).getString(key),(Object[])args);} catch (MissingResourceException e) {throw new RuntimeException("Failed to localize key="+key+",args="+ asList(args),e);}}

    這里面調用到了我們分析ResourceBundleHolder類中的核心方法get(Locale),也即通過地區條件Locale查找對應的屬性文件。這里有個"key",代表的是屬性文件內部的數據的key(屬性文件內部數據結構也是key-value)。

    7.最終目的
    最終目的就是在資源包中找到屬性文件,然后在該文件中找到key為"CLI.VersionMismatch"的值,用參數args內容通過MessageFormat.format替換掉值里面的占位符。

    綜上分析,Message類的

    return new Localizable(holder, "CLI.VersionMismatch", new Object[0]);

    返回的即是包含上面toString需要的三個參數的Localizable對象,當在Message類的更外部調用的時候,會讓這個對象toString輸出,而

    public String toString() {return toString(LocaleProvider.getLocale());}

    所以就調用回了toString(Locale locale)方法,最終實現了我們剛才說的最終目的。

    而LocaleProvider.getLocale()就是一個緩存存儲的就是當前本地化數據,如語言、國家地區等。

    public static final LocaleProvider DEFAULT = new LocaleProvider() {public Locale get() {return Locale.getDefault();}};

    一步步跟進去到jdk的Locale類中,找到對應方法:

    private static Locale initDefault() {String language, region, script, country, variant;language = AccessController.doPrivileged(new GetPropertyAction("user.language", "en"));// for compatibility, check for old user.region propertyregion = AccessController.doPrivileged(new GetPropertyAction("user.region"));if (region != null) {// region can be of form country, country_variant, or _variantint i = region.indexOf('_');if (i >= 0) {country = region.substring(0, i);variant = region.substring(i + 1);} else {country = region;variant = "";}script = "";} else {script = AccessController.doPrivileged(new GetPropertyAction("user.script", ""));country = AccessController.doPrivileged(new GetPropertyAction("user.country", ""));variant = AccessController.doPrivileged(new GetPropertyAction("user.variant", ""));}return getInstance(language, script, country, variant, null);}

    以上的方法通過本地方法(native method)獲取機器的語言,國家地區等信息。

    提供者模式

    首先展示一下上面localizer的類圖,localizer就使用到了提供者模式,因為我們看到了LocaleProvider,我們通過它的類圖來研究和學習提供者模式。

    以上LocaleProvider的DEFAULT屬性為LocaleProvider本身的匿名內部類,這里可以再次重申

    繼承了抽象類的類必須實現其抽象方法。

    提供者模式并非一個全新的主意,它主要從流行的策略模式發展而來??焖贋g覽下策略模式是個不錯的想法。

    提供者模式是由.net2.0提出的,雖然語言與java不同,但是設計模式是跨語言的。有了提供者模式,很多時候可以用它來代替策略模式,他們的角色也是非常類似的。

    • 角色
      • provider類,用于統籌管理具體provider對象,是一個抽象類
      • XXXProvider類,繼承自Provider,是具體的provide類,有自己的方法實現

    通過與策略模式對比,我們可以發現LocaleProvider很神奇,有點與策略模式相類似但又不太一樣,下面具體分析,

  • LocaleProvider的setProvider(LocaleProvider p)方法與策略模式中的Context類的setStrategy(Strategy strategy)基本思想是一致的。
  • 同時,LocaleProvider又可以成為策略模式中的Strategy類,
  • 他們本身都是抽象類
  • 都定義了一個沖抽象方法,策略模式中的是abstract void algorithm(),LocaleProvider定義的是abstract Locale get()
  • 他們都有自己的實現類,策略模式繼承與Strategy類的有BSTAdapter和RedBlackBSTAdapter,LocaleProvider雖然沒有直接的子類,但是它內部定義的DEFAULT是一個繼承了LocaleProvider本身的匿名內部類,它實現了那個抽象方法Locale get(),且返回的是Locale.getDefault()。(其實setProvider方法也是注入了一個繼承于LocaleProvider的實現了Locale get方法的類,可以是匿名內部類,會更加方便。)
  • 所以結論是什么?LocaleProvider類將策略模式中的Context類和Strategy類合并了起來。最終所有的模式其實都匯聚到這一個類中,然而這并非不符合“單一指責原則”,因為LocaleProvider類的職責自始至終都是一個,那就是決定Locale對象。

    以后如果遇到這種情況,我們也可以使用這種模式創建我們的Provider,決定(服務?)某個類的對象。

    Message.java

    Message.java是整個localizer包的出口。它的功能是:

  • 允許用戶創建一系列按照某名字KeyName附加國家地區的兩位字母的國際化文件(例如KeyName_zh, KeyName_en)。
  • 創建一個名字為KeyName的類,包含一個ResourceBundleHolder的成員對象,該對象是傳入了KeyName類獲得的資源包持有器。
  • KeyName類創建了一系列方便客戶端調用屬性文件中的數據的方法,一般是以屬性文件中內容的key為方法名,傳入的是替換屬性文件中該key的值的占位符。
  • 方法實現分為兩種:
  • holder.format("屬性文件中key", new Object[] { arg0 });
  • new Localizable(holder, "屬性文件中key", new Object[] { arg0 });
  • 以上兩種方式的內部實現分別為

    MessageFormat.format(get(LocaleProvider.getLocale()).getString(key),args);

  • MessageFormat.format(holder.get(locale).getString(key),(Object[])args);

    這兩種實現基本是一致,只是調用方式稍有不同,他們均可以實現按照語言本地化的方式調用字符串,并用參數替換占位符,格式化該字符串的功能。

    但是我們發現有意思的是,如果你是第一次下載下來localizer的源碼,會發現并不存在這個Message.java的文件。經過分析才知道,該類文件是通過Maven的插件自動創建的。

    maven-localizer-plugin

    這個Maven插件也屬于localizer包的一部分,它的功能就一個:自動創建上面提到的那個Message.java類文件。

    首先先來思考,這個Message.java的類文件(也就是上面提及的KeyName類)如此重要,是外部調用的接口,為什么要自動生成?

    原因很簡單,因為太麻煩。我們定義屬性文件的時候,基本已經把所有的數據按照key-value的形式寫入,同時又創建了多個相同結構,不同翻譯版本的value的地區語言屬性文件。Message類文件需要按照屬性文件內部的key來生成對應的方法,這個過程就是復制粘貼還容易出錯的工作量很大的枯燥的工程,因此,通過插件去讀取這些屬性文件然后自動生成是比較好的選擇。

    下面針對Maven如何創建一個插件來另開一個章節仔細介紹。

    Maven插件

    Maven本身只是提供了一個執行環境,所有的具體操作包括打包、單元測試、代碼檢查、版本規則等等都是通過Maven插件完成的。為了讓Maven完成不同的任務,我們要為它配置各種插件。

    archetype:generate:從archetype創建一個Maven項目

    首先Archetype也是Maven的一個插件。

    創建一個新的Maven工程,我們需要用到Maven的archetype,archetype是一個模板工具包,定義了一類項目的基本架構。

    • Maven通過不同的archetype為程序員提供了創建Maven項目的模板,同時也可以根據已有的Maven項目生成自己團隊使用的參數化模板。
    • 通過archetype,開發人員可以很方便的復用一類項目的最佳實現架構到自己的項目中去。
    • 在一個Maven項目中,開發人員可以通過archetype提供的范例快速入門并了解該項目的結構與特點。

    Maven的Archetype包含:

    • maven-archetype-plugin: Archetype插件。通過該插件,開發者可以在Maven中使用Archetype。它主要有兩個goal:
      • archetype:generate:從archetype 中創建一個Maven項目。
      • archetype:create-from-project:從已有的項目中生成archetype。
    • archetype-packaging:用于描述Archetype的生命周期與構建項目軟件包。
    • archetype-models:用于描述類和引用。
    • archetype-common:核心類
    • archetype-test:用于測試Maven archetype的內部組件。

    下面利用Archetype具體創建一個Maven項目,這里使用命令行的方式,IDE只是集成了這些功能,最終仍舊是轉化成命令行的方式,所以理解了命令行操作,IDE的操作也就直接掌握了。

    • 執行mvn archetype:generate,終端會顯示開始下載很多archetype,最終穩定在一個讓你輸入一個編號的界面。這個編號有個默認的1082,對應的是maven archetype quickstart。如果直接回車則默認選擇該quickstart的archetype為你構建一個Maven項目?;剀囈院髸屇氵x擇一個quickstart的版本,默認是最近穩定版。繼續回車會讓你默認輸入
    Define value for property 'groupId': Define value for property 'artifactId': Define value for property 'version' 1.0-SNAPSHOT: : Define value for property 'package' : :
    • 按照上面傻瓜式的輸入,就創建了一個完整的Maven工程,我們將其導入eclipse,然后觀察它的目錄結構??梢园l現src/main/java和src/test/java已經成為了source folder,其中也包含例子程序,并且該項目也引用了jdk,mavne默認加了一個junit的依賴。

    • pom.xml
      最后主要內容為查看該項目的pom文件。

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.evsward</groupId><artifactId>testforOne</artifactId><version>1.0-SNAPSHOT</version><packaging>jar</packaging><name>testforOne</name><url>http://maven.apache.org</url><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency></dependencies> </project>

    非常簡潔,只有一個junit的依賴,其他的都是常見的屬性信息字段。那么問題是剛剛講過的Maven的其他強大的功能所依賴的那些插件在哪里定義的呢?
    實際上,我們項目中的pom文件是繼承于一個Super Pom,我們在該項目目錄下的終端里輸入

    mvn help:effective-pom

    就會展示一個完整的包含其super pom內容的pom文件,完整的pom文件太長了,就不展示在這里了,核心思想就是我們項目中的pom文件是繼承一個super pom的,所以項目內的pom可以僅關注于本業務的依賴定義即可,Maven默認的功能插件支持在super pom中都會默認幫你配置好。

    archetype:create-from-project:從已有的項目中生成archetype

    在上面通過archetype生成了Maven工程以后,我們對其進行一個針對我們組內開發需求,加入依賴包,創建示例程序等,抽象出來一個我們自己的maven項目構建模板。然后在項目根目錄終端在中輸入:

    mvn archetype:create-from-project

    執行完以上命令以后,就可以在target/generated-sources/archetype目錄下生成一個archetype目錄,進去這個目錄,然后mvn install就可以將該archetype安裝到本地倉庫,如果要共享到組內,則可以使用mvn deploy安裝到nexus等公共倉庫。非常方便。

    創建一個自己的maven插件

    學習了以上maven archetype的知識,我們要通過archetype創建一個自定義的maven插件開發工程,archetype選擇maven-archetype-mojo。然后按照上面講過的內容將該Maven工程創建成功。然后我們來觀察這個項目的結構和內容,

    • pom.xml文件中的packaging字段的值為maven-plugin,這與我們其他的maven項目不同,其他的項目可能是jar,war,hpi(Jenkins插件安裝包)等。
    • 示例程序中,我們發現了一個Mojo結尾的類,這里我們可以轉到 maven-localizer-plugin,可以看到GeneratorMojo,它繼承自org.apache.maven.plugin.AbstractMojo。它的類注解有兩個新東西:
  • @goal generate 每個maven插件都對應著一個goal,這個goal會在使用該插件的項目的pom中定義,我們去jenkins-CLI的pom文件中查找。
  • <plugin><groupId>org.jvnet.localizer</groupId><artifactId>maven-localizer-plugin</artifactId><version>1.9</version><executions><execution><goals><goal>generate</goal></goals><configuration><fileMask>Messages.properties</fileMask><outputDirectory>target/generated-sources/localizer</outputDirectory></configuration></execution></executions></plugin>

    可以發現goal字段的generate對應的就是GeneratorMojo的注解@goal generate,這是為查找插件使用的。

  • @phase generate-sources
    這個注解定義了插件在Maven的哪一個生命周期中運行。Maven構建的生命周期,以下通過一個表格來展示。
  • 生命周期階段描述
    validate檢查工程配置是否正確,完成構建過程的所有必要信息是否能夠獲取到。
    initialize初始化構建狀態,例如設置屬性。
    generate-sources生成編譯階段需要包含的任何源碼文件。
    process-sources處理源代碼,例如,過濾任何值(filter any value)。
    generate-resources生成工程包中需要包含的資源文件。
    process-resources拷貝和處理資源文件到目的目錄中,為打包階段做準備。
    compile編譯工程源碼。
    process-classes處理編譯生成的文件,例如 Java Class 字節碼的加強和優化。
    generate-test-sources生成編譯階段需要包含的任何測試源代碼。
    process-test-sources處理測試源代碼,例如,過濾任何值(filter any values)。
    test-compile編譯測試源代碼到測試目的目錄。
    process-test-classes處理測試代碼文件編譯后生成的文件。
    test使用適當的單元測試框架(例如JUnit)運行測試。
    prepare-package在真正打包之前,為準備打包執行任何必要的操作。
    package獲取編譯后的代碼,并按照可發布的格式進行打包,例如 JAR、WAR 或者 EAR 文件。
    pre-integration-test在集成測試執行之前,執行所需的操作。例如,設置所需的環境變量。
    integration-test處理和部署必須的工程包到集成測試能夠運行的環境中。
    post-integration-test在集成測試被執行后執行必要的操作。例如,清理環境。
    verify運行檢查操作來驗證工程包是有效的,并滿足質量要求。
    install安裝工程包到本地倉庫中,該倉庫可以作為本地其他工程的依賴。
    deploy拷貝最終的工程包到遠程倉庫中,以共享給其他開發人員和工程。

    所以該注解定義了maven-localizer-plugin插件的執行時間是在generate-sources階段,也就是在生成工程包中需要包含的資源文件的階段,會將Message.java生成。

    • MavenProject屬性
    /*** The maven project.** @parameter expression="${project}"* @required* @readonly*/protected MavenProject project;

    GeneratorMojo類包含一個MavenProject的對象屬性,該屬性并未賦值,它可以在插件運行時通過@parameter expression="${project}"將maven項目注入(Maven自己的IoC容器Plexus)到該屬性對象中去。在使用MavenProject類時,要在pom中加入依賴

    <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-project</artifactId> <version>2.2.1</version> </dependency>

    即可使用該類。

    • execute方法
      繼續研究GeneratorMojo類,它實現了AbstractMojo類以后,就會默認必須實現一個execute方法。這個方法就是該插件功能的核心實現。回到我們的Maven插件開發項目中去,簡單編寫execute的內容,最終我們的測試Mojo類的完整內容如下:
    package com.evsward.test_maven_plugin;+import org.apache.maven.model.Build;../*** * @author Evsward* @goal evswardtest* @phase pre-integration-test*/ public class EvswardTestMojo extends AbstractMojo {/*** @parameter expression="${project}"* @readonly*/private MavenProject project;public void execute() throws MojoExecutionException, MojoFailureException {Build build = project.getBuild();getLog().info("\n=========test here=================\n");getLog().info("build: " + build.getDefaultGoal() + build.getDirectory() + build.getFinalName());getLog().info("=======================");}}

    然后對整個Maven項目執行mvn clean install
    build success以后執行mvn com.evsward:test-maven-plugin:0.0.1-SNAPSHOT:evswardtest
    輸出內容如下:

    [INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building test-maven-plugin Maven Plugin 0.0.1-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- test-maven-plugin:0.0.1-SNAPSHOT:evswardtest (default-cli) @ test-maven-plugin --- [INFO] =========test here=================[INFO] build: nullE:\Evsward\git\test-maven-plugin\targettest-maven-plugin-0.0.1-SNAPSHOT [INFO] ======================= [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 0.368 s [INFO] Finished at: 2017-11-25T13:04:49+08:00 [INFO] Final Memory: 8M/245M [INFO] ------------------------------------------------------------------------
    • 改善插件goal的命令

      mvn com.evsward:test-maven-plugin:0.0.1-SNAPSHOT:evswardtest

    這個命令實在是太長很麻煩,不像我們之前執行的mvn install等,因此我們要針對我們的命令進行改善,這就需要使用別名的方式代替冗長的命令,有兩點要求:

    • 插件工程的命名規則必須是xxx-maven-plugin或者maven-xxx-plugin,我們的工程是test-maven-plugin,已經滿足了這個命名規則。(經過嘗試這一條并不應驗)
    • Maven默認搜索插件只會在org.apache.maven.plugins和org.codehaus.mojo兩個groupId下搜索,我們要讓它也來搜索我們自己的groupId,就要在Maven的setting.xml中加入
    <pluginGroups><!-- pluginGroup| Specifies a further group identifier to use for plugin lookup.<pluginGroup>com.your.plugins</pluginGroup>--><pluginGroup>com.evsward</pluginGroup> </pluginGroups>

    所以最終命令執行

    mvn test-maven-plugin:evswardtest

    即可。

    GeneratorMojo的execute方法

    GeneratorMojo除了注入project屬性以外,還通過@parameter注入了outputDirectory,fileMask,outputEncoding,keyPattern,generatorClass,strictTypes,accessModifierAnnotations,他們分別都是maven build過程中的一些屬性內容。

    // packaging 方式為pom的跳過 String pkg = project.getPackaging(); if(pkg!=null && pkg.equals("pom"))return;

    execute方法首先要確認packaging方式,如果是pom方式則不處理。
    下面則是一系列java io相關的文件寫入工作,文件過濾器FileFilter可以搜索屬性文件或結尾包含"_xx"的文件,將他們通過一系列處理最終調用ClassGenerator的build方法完成寫入工作。

    TODO: java io 方面具體的深入研究請關注我即將發布的文章。

    下面是maven-localizer-plugin插件中涉及類生成工作的類圖。

    本文總結

    通過本文的研究,我們深入學習了:

    • Maven的配置使用,模板架構,工程創建,插件開發,部署等高級使用方法。這部分源碼地址在test-maven-plugin
    • Jenkins源碼中所有涉及屬性文件的操作工具localizer以及其開發的maven-localizer-plugin插件,并完全研究了localizer的源碼
    • 通過研究localizer源碼,我們復習了設計模式中的策略模式,同時也學習了新型的提供者模式。
    • 最后也是本文的初衷,涉及Jenkins源碼部分,我們僅是完成了對其國際化工具的實現,這對于整套源碼來講只是冰山一角,之后會隨著越加深入而展開更多的Jenkins源碼研究課題。

    轉載于:https://www.cnblogs.com/Evsward/p/localizer.html

    總結

    以上是生活随笔為你收集整理的结合提供者模式解析Jenkins源码国际化的实现的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    亚洲国产午夜精品理论片 | 人人妻人人澡人人爽精品欧美 | 激情五月综合色婷婷一区二区 | 一本无码人妻在中文字幕免费 | 国产三级久久久精品麻豆三级 | 久久成人a毛片免费观看网站 | 精品夜夜澡人妻无码av蜜桃 | 未满小14洗澡无码视频网站 | 全黄性性激高免费视频 | 99久久精品无码一区二区毛片 | 日日噜噜噜噜夜夜爽亚洲精品 | 天干天干啦夜天干天2017 | 国产熟妇另类久久久久 | 国产成人精品三级麻豆 | 久久精品国产99精品亚洲 | 又粗又大又硬毛片免费看 | 久久久精品欧美一区二区免费 | 亚洲国产成人av在线观看 | 疯狂三人交性欧美 | 狠狠色色综合网站 | 国产成人无码午夜视频在线观看 | 无码精品国产va在线观看dvd | 人妻体内射精一区二区三四 | 中文字幕无码日韩欧毛 | 国产精品毛片一区二区 | 国精产品一区二区三区 | 免费网站看v片在线18禁无码 | 亚洲欧美中文字幕5发布 | 久久国产36精品色熟妇 | 性欧美疯狂xxxxbbbb | 麻豆av传媒蜜桃天美传媒 | 伊人久久大香线蕉午夜 | 久久午夜夜伦鲁鲁片无码免费 | 国产精品久久久久久亚洲影视内衣 | 熟妇人妻激情偷爽文 | 国产9 9在线 | 中文 | 亚洲天堂2017无码中文 | 天海翼激烈高潮到腰振不止 | 亚洲精品午夜无码电影网 | 久久久久se色偷偷亚洲精品av | 在线成人www免费观看视频 | 成人三级无码视频在线观看 | 午夜肉伦伦影院 | 67194成是人免费无码 | 国产精品对白交换视频 | 久久99精品久久久久久动态图 | a国产一区二区免费入口 | 内射欧美老妇wbb | 波多野结衣一区二区三区av免费 | 日韩少妇内射免费播放 | 性生交片免费无码看人 | 大色综合色综合网站 | 无遮挡啪啪摇乳动态图 | 亚洲欧美日韩成人高清在线一区 | 国产成人无码av片在线观看不卡 | 亚洲欧美色中文字幕在线 | 久久精品中文字幕大胸 | 国产精品美女久久久 | 蜜桃视频韩日免费播放 | 精品久久久久久亚洲精品 | 老熟女乱子伦 | 99riav国产精品视频 | 国内精品久久久久久中文字幕 | www成人国产高清内射 | 亚洲另类伦春色综合小说 | 国产婷婷色一区二区三区在线 | 超碰97人人射妻 | 久久精品国产日本波多野结衣 | 久久久久久亚洲精品a片成人 | 纯爱无遮挡h肉动漫在线播放 | 亚洲人成网站色7799 | 未满成年国产在线观看 | 精品国产成人一区二区三区 | 狠狠色欧美亚洲狠狠色www | 国产又粗又硬又大爽黄老大爷视 | 久青草影院在线观看国产 | 成在人线av无码免费 | 国产内射爽爽大片视频社区在线 | 色狠狠av一区二区三区 | 国内精品九九久久久精品 | 天堂无码人妻精品一区二区三区 | 国产精华av午夜在线观看 | 国产又粗又硬又大爽黄老大爷视 | 久久亚洲日韩精品一区二区三区 | 一本一道久久综合久久 | 撕开奶罩揉吮奶头视频 | 麻豆md0077饥渴少妇 | 欧美兽交xxxx×视频 | 曰韩少妇内射免费播放 | 久久这里只有精品视频9 | 牲欲强的熟妇农村老妇女视频 | 精品国产一区二区三区四区在线看 | 国产精品久久久一区二区三区 | 亚洲经典千人经典日产 | 国产成人无码av一区二区 | 国产人妻精品一区二区三区不卡 | 久久精品国产大片免费观看 | 久热国产vs视频在线观看 | 人妻人人添人妻人人爱 | 久热国产vs视频在线观看 | 东北女人啪啪对白 | 亚洲精品一区二区三区四区五区 | 国产小呦泬泬99精品 | 久久婷婷五月综合色国产香蕉 | 麻豆国产人妻欲求不满谁演的 | 日日麻批免费40分钟无码 | 伦伦影院午夜理论片 | 亚洲综合色区中文字幕 | 亚洲第一无码av无码专区 | 成人免费视频一区二区 | 久久久久亚洲精品中文字幕 | 欧美熟妇另类久久久久久不卡 | 亚洲日本一区二区三区在线 | 性生交大片免费看女人按摩摩 | 亚洲精品午夜国产va久久成人 | 国产精品亚洲综合色区韩国 | 中文精品久久久久人妻不卡 | 亚无码乱人伦一区二区 | 久久综合狠狠综合久久综合88 | 永久免费观看美女裸体的网站 | 未满成年国产在线观看 | 俺去俺来也在线www色官网 | 成 人 免费观看网站 | 亚洲区小说区激情区图片区 | 国产肉丝袜在线观看 | 久久久av男人的天堂 | 亚洲天堂2017无码中文 | 丰满少妇弄高潮了www | 黑人粗大猛烈进出高潮视频 | 熟女俱乐部五十路六十路av | 在线精品亚洲一区二区 | 少妇性俱乐部纵欲狂欢电影 | 少妇的肉体aa片免费 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 国产精品久久久久久久影院 | 夜夜高潮次次欢爽av女 | 亚洲精品欧美二区三区中文字幕 | 国内综合精品午夜久久资源 | 欧美兽交xxxx×视频 | 国产香蕉尹人综合在线观看 | 国产色精品久久人妻 | 成年美女黄网站色大免费视频 | 最新版天堂资源中文官网 | 欧美精品国产综合久久 | 精品一区二区三区波多野结衣 | 乱人伦中文视频在线观看 | 亚洲va中文字幕无码久久不卡 | 无码国产色欲xxxxx视频 | 男人的天堂2018无码 | 性欧美疯狂xxxxbbbb | 成人女人看片免费视频放人 | 欧美日韩一区二区三区自拍 | 中文字幕乱妇无码av在线 | 国产在线精品一区二区高清不卡 | 国内精品人妻无码久久久影院蜜桃 | 狠狠亚洲超碰狼人久久 | 亚洲va中文字幕无码久久不卡 | 无码一区二区三区在线 | 日韩精品久久久肉伦网站 | 十八禁真人啪啪免费网站 | 亚洲 高清 成人 动漫 | 亚洲 高清 成人 动漫 | 国产精品久久久久9999小说 | 国产成人精品优优av | 亚洲熟妇色xxxxx亚洲 | 久久久久成人片免费观看蜜芽 | 亚洲va欧美va天堂v国产综合 | 欧美成人午夜精品久久久 | 少妇高潮喷潮久久久影院 | 国产一区二区三区日韩精品 | 欧美熟妇另类久久久久久不卡 | 色综合久久久无码中文字幕 | 日日摸日日碰夜夜爽av | 亚洲综合另类小说色区 | 又大又硬又黄的免费视频 | 亚洲 欧美 激情 小说 另类 | 人人妻人人澡人人爽人人精品浪潮 | 国语自产偷拍精品视频偷 | 国产精品手机免费 | 国色天香社区在线视频 | 永久免费观看国产裸体美女 | 中文字幕无线码 | 无码av最新清无码专区吞精 | 亚洲の无码国产の无码步美 | 一本久久a久久精品vr综合 | 国产舌乚八伦偷品w中 | 又色又爽又黄的美女裸体网站 | 小泽玛莉亚一区二区视频在线 | 丁香啪啪综合成人亚洲 | 国产无av码在线观看 | 久久久久av无码免费网 | 亚洲精品综合五月久久小说 | 久久www免费人成人片 | 国产精品无码永久免费888 | 人妻少妇精品无码专区二区 | 无码任你躁久久久久久久 | 免费无码一区二区三区蜜桃大 | 亚洲国产成人a精品不卡在线 | 暴力强奷在线播放无码 | 亚洲色www成人永久网址 | 国产成人一区二区三区在线观看 | 成人av无码一区二区三区 | 国产人妻精品一区二区三区 | 一本色道久久综合狠狠躁 | 日本高清一区免费中文视频 | 欧美日韩综合一区二区三区 | 久久综合九色综合欧美狠狠 | 又黄又爽又色的视频 | 久久精品99久久香蕉国产色戒 | 国产两女互慰高潮视频在线观看 | а天堂中文在线官网 | 97精品国产97久久久久久免费 | 国产综合久久久久鬼色 | 精品国产一区二区三区四区 | 色诱久久久久综合网ywww | 中文无码精品a∨在线观看不卡 | 九九综合va免费看 | 欧洲熟妇精品视频 | 国产亚洲欧美日韩亚洲中文色 | 日本欧美一区二区三区乱码 | 日本爽爽爽爽爽爽在线观看免 | 午夜肉伦伦影院 | 爆乳一区二区三区无码 | 亚洲熟悉妇女xxx妇女av | 扒开双腿吃奶呻吟做受视频 | 亚洲综合精品香蕉久久网 | 日本一本二本三区免费 | 婷婷色婷婷开心五月四房播播 | 免费无码一区二区三区蜜桃大 | 久久精品人人做人人综合试看 | 乱码av麻豆丝袜熟女系列 | 午夜丰满少妇性开放视频 | 免费人成网站视频在线观看 | 久久午夜夜伦鲁鲁片无码免费 | 色婷婷香蕉在线一区二区 | 欧美日韩综合一区二区三区 | 西西人体www44rt大胆高清 | 未满成年国产在线观看 | 夜先锋av资源网站 | 装睡被陌生人摸出水好爽 | 野外少妇愉情中文字幕 | 98国产精品综合一区二区三区 | 欧美放荡的少妇 | 强伦人妻一区二区三区视频18 | 一个人看的www免费视频在线观看 | 国产又爽又黄又刺激的视频 | 99麻豆久久久国产精品免费 | 久久99精品久久久久久 | 伊在人天堂亚洲香蕉精品区 | 好爽又高潮了毛片免费下载 | 亚洲a无码综合a国产av中文 | 欧美一区二区三区 | 无码吃奶揉捏奶头高潮视频 | 国内精品人妻无码久久久影院 | 又色又爽又黄的美女裸体网站 | 99在线 | 亚洲 | 亚洲の无码国产の无码影院 | 免费人成网站视频在线观看 | 鲁大师影院在线观看 | 久久久久久a亚洲欧洲av冫 | 成人aaa片一区国产精品 | 国产猛烈高潮尖叫视频免费 | 欧洲精品码一区二区三区免费看 | 乱人伦人妻中文字幕无码 | 无码精品人妻一区二区三区av | 亚洲精品国产精品乱码不卡 | 亚洲精品国偷拍自产在线麻豆 | 日日噜噜噜噜夜夜爽亚洲精品 | 色婷婷欧美在线播放内射 | 亚洲中文字幕无码一久久区 | 国产乱人伦偷精品视频 | 精品国产成人一区二区三区 | 中文字幕无码免费久久9一区9 | 久久zyz资源站无码中文动漫 | 一个人看的视频www在线 | 色一情一乱一伦 | 亚洲一区二区三区无码久久 | 四虎4hu永久免费 | 中文字幕日韩精品一区二区三区 | 福利一区二区三区视频在线观看 | 男人扒开女人内裤强吻桶进去 | 亚洲阿v天堂在线 | 丰满肥臀大屁股熟妇激情视频 | 日本www一道久久久免费榴莲 | 波多野结衣乳巨码无在线观看 | 日本精品人妻无码77777 天堂一区人妻无码 | 欧美大屁股xxxxhd黑色 | 久久99精品国产麻豆 | 99久久人妻精品免费二区 | 波多野结衣高清一区二区三区 | 欧美人妻一区二区三区 | 国模大胆一区二区三区 | 澳门永久av免费网站 | 国产真人无遮挡作爱免费视频 | 日本丰满熟妇videos | 亚洲aⅴ无码成人网站国产app | 狠狠色欧美亚洲狠狠色www | 成人无码视频在线观看网站 | 成人免费无码大片a毛片 | 中文字幕av无码一区二区三区电影 | 亚洲精品国偷拍自产在线观看蜜桃 | 无码国模国产在线观看 | 中文字幕av无码一区二区三区电影 | 在线欧美精品一区二区三区 | 国产精品久久精品三级 | 久久人人爽人人人人片 | 欧美国产日韩亚洲中文 | 又湿又紧又大又爽a视频国产 | 欧美老妇交乱视频在线观看 | 久久久av男人的天堂 | 久精品国产欧美亚洲色aⅴ大片 | 日本精品少妇一区二区三区 | 国产人妻大战黑人第1集 | 国产舌乚八伦偷品w中 | 亚洲日韩一区二区三区 | 免费播放一区二区三区 | 精品亚洲成av人在线观看 | 成人影院yy111111在线观看 | 玩弄少妇高潮ⅹxxxyw | 国产人妻精品午夜福利免费 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 亚洲经典千人经典日产 | 人人爽人人澡人人人妻 | 欧美激情一区二区三区成人 | 精品无码国产一区二区三区av | 欧美熟妇另类久久久久久不卡 | 色综合久久久久综合一本到桃花网 | 人人爽人人爽人人片av亚洲 | 亚洲精品国产品国语在线观看 | 99久久亚洲精品无码毛片 | 久久精品成人欧美大片 | 色综合久久中文娱乐网 | 少妇性l交大片欧洲热妇乱xxx | 性色欲网站人妻丰满中文久久不卡 | 久久精品一区二区三区四区 | 亚洲日本在线电影 | 香港三级日本三级妇三级 | 国产成人精品一区二区在线小狼 | 在线а√天堂中文官网 | 精品人人妻人人澡人人爽人人 | 蜜臀aⅴ国产精品久久久国产老师 | 精品无码一区二区三区的天堂 | 亚洲中文字幕久久无码 | 色一情一乱一伦一视频免费看 | 色 综合 欧美 亚洲 国产 | 天堂亚洲2017在线观看 | 久久天天躁狠狠躁夜夜免费观看 | 欧美丰满老熟妇xxxxx性 | 国产激情综合五月久久 | 日本在线高清不卡免费播放 | 国产精品高潮呻吟av久久4虎 | 日本成熟视频免费视频 | 永久免费精品精品永久-夜色 | 丰满少妇人妻久久久久久 | 久久综合久久自在自线精品自 | 色欲久久久天天天综合网精品 | 国产精品久久久 | 精品国产麻豆免费人成网站 | 色五月五月丁香亚洲综合网 | 国产成人人人97超碰超爽8 | 草草网站影院白丝内射 | 又湿又紧又大又爽a视频国产 | 成人精品视频一区二区 | 国产成人综合美国十次 | 性生交片免费无码看人 | 一本色道久久综合狠狠躁 | 99久久99久久免费精品蜜桃 | 天天拍夜夜添久久精品大 | 纯爱无遮挡h肉动漫在线播放 | 激情国产av做激情国产爱 | 人人妻人人澡人人爽人人精品 | 国产精品99久久精品爆乳 | 熟妇人妻无码xxx视频 | 色五月五月丁香亚洲综合网 | 久久精品中文闷骚内射 | 亚洲中文字幕av在天堂 | 精品一区二区三区波多野结衣 | 精品成在人线av无码免费看 | 国产成人无码午夜视频在线观看 | 鲁大师影院在线观看 | 国产精品亚洲五月天高清 | 国产熟女一区二区三区四区五区 | 国产精品人人爽人人做我的可爱 | 精品国产国产综合精品 | 国产成人午夜福利在线播放 | 中文亚洲成a人片在线观看 | 久久无码中文字幕免费影院蜜桃 | 色一情一乱一伦一区二区三欧美 | 99久久人妻精品免费二区 | 丁香啪啪综合成人亚洲 | 亚洲精品国产a久久久久久 | 老子影院午夜伦不卡 | 国产极品视觉盛宴 | 麻花豆传媒剧国产免费mv在线 | 久久zyz资源站无码中文动漫 | 性色av无码免费一区二区三区 | 精品一区二区三区无码免费视频 | 精品国产aⅴ无码一区二区 | 国产精品二区一区二区aⅴ污介绍 | 波多野42部无码喷潮在线 | 少妇被粗大的猛进出69影院 | 又紧又大又爽精品一区二区 | 欧美乱妇无乱码大黄a片 | 欧美黑人乱大交 | 亚洲日韩av一区二区三区四区 | 在线观看国产一区二区三区 | 国产亚洲美女精品久久久2020 | 色噜噜亚洲男人的天堂 | 美女黄网站人色视频免费国产 | 俄罗斯老熟妇色xxxx | 久久久无码中文字幕久... | 免费无码一区二区三区蜜桃大 | 国产午夜亚洲精品不卡 | 无码人妻丰满熟妇区五十路百度 | 免费国产成人高清在线观看网站 | 国产精品va在线播放 | 天堂亚洲2017在线观看 | 伊人久久大香线蕉av一区二区 | 久久亚洲中文字幕精品一区 | 免费人成网站视频在线观看 | 精品久久8x国产免费观看 | 东京无码熟妇人妻av在线网址 | 99久久无码一区人妻 | 久久综合久久自在自线精品自 | 大肉大捧一进一出好爽视频 | 亚洲人成人无码网www国产 | 国产人妻精品午夜福利免费 | 四虎国产精品免费久久 | 我要看www免费看插插视频 | 国模大胆一区二区三区 | 亚洲国产av精品一区二区蜜芽 | 性欧美大战久久久久久久 | 午夜时刻免费入口 | 亚洲色偷偷偷综合网 | 欧美日本精品一区二区三区 | 亚洲va中文字幕无码久久不卡 | 亚洲乱码中文字幕在线 | 欧美喷潮久久久xxxxx | 国产av无码专区亚洲awww | 国产精品内射视频免费 | 人妻无码αv中文字幕久久琪琪布 | 亚洲一区二区三区在线观看网站 | 欧美日韩综合一区二区三区 | 男女下面进入的视频免费午夜 | 国产精品毛多多水多 | 亚洲 日韩 欧美 成人 在线观看 | 中文毛片无遮挡高清免费 | 精品欧洲av无码一区二区三区 | 成年美女黄网站色大免费视频 | 色 综合 欧美 亚洲 国产 | 狠狠色噜噜狠狠狠7777奇米 | 欧美放荡的少妇 | 国产无套粉嫩白浆在线 | 亚洲色无码一区二区三区 | av香港经典三级级 在线 | 色综合久久88色综合天天 | 亚洲日韩av一区二区三区中文 | 国产欧美精品一区二区三区 | 欧洲极品少妇 | 四虎影视成人永久免费观看视频 | 国产女主播喷水视频在线观看 | 国产后入清纯学生妹 | 国产av无码专区亚洲a∨毛片 | 中文字幕乱码人妻无码久久 | 蜜桃臀无码内射一区二区三区 | 国产精品亚洲一区二区三区喷水 | 国产偷自视频区视频 | 少妇人妻大乳在线视频 | 乌克兰少妇性做爰 | 鲁鲁鲁爽爽爽在线视频观看 | 亚洲欧洲中文日韩av乱码 | 撕开奶罩揉吮奶头视频 | 性欧美疯狂xxxxbbbb | 亚洲欧美综合区丁香五月小说 | 少妇人妻偷人精品无码视频 | 无码毛片视频一区二区本码 | 免费看男女做好爽好硬视频 | 中文字幕无码日韩专区 | 麻豆果冻传媒2021精品传媒一区下载 | 丰满诱人的人妻3 | 无码帝国www无码专区色综合 | 日本免费一区二区三区最新 | 国产午夜亚洲精品不卡 | 成人性做爰aaa片免费看不忠 | 久久午夜夜伦鲁鲁片无码免费 | 成人aaa片一区国产精品 | 国产成人无码区免费内射一片色欲 | 亚洲精品午夜国产va久久成人 | 蜜桃臀无码内射一区二区三区 | 欧美真人作爱免费视频 | 日韩 欧美 动漫 国产 制服 | 熟妇人妻无码xxx视频 | 日韩精品乱码av一区二区 | 国产人妻人伦精品1国产丝袜 | 人人妻人人澡人人爽欧美一区九九 | 久久久中文久久久无码 | 久久99热只有频精品8 | 最新国产乱人伦偷精品免费网站 | 亚洲熟妇色xxxxx欧美老妇y | 久久国产劲爆∧v内射 | 久久久久久久女国产乱让韩 | 国产又粗又硬又大爽黄老大爷视 | 欧美性生交活xxxxxdddd | 牲欲强的熟妇农村老妇女视频 | 黑人大群体交免费视频 | 夜夜影院未满十八勿进 | 特级做a爰片毛片免费69 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 日本高清一区免费中文视频 | 久热国产vs视频在线观看 | 国产小呦泬泬99精品 | 乱人伦人妻中文字幕无码久久网 | 亚洲日韩一区二区 | 色欲久久久天天天综合网精品 | 亚洲欧洲日本无在线码 | 中文字幕人成乱码熟女app | 狂野欧美性猛交免费视频 | 无码人妻久久一区二区三区不卡 | 99久久精品日本一区二区免费 | 中文字幕色婷婷在线视频 | 色综合久久久久综合一本到桃花网 | 色一情一乱一伦一区二区三欧美 | 麻豆成人精品国产免费 | 久久zyz资源站无码中文动漫 | 久久久久av无码免费网 | 久久久久久久女国产乱让韩 | 亚洲天堂2017无码 | 国产色xx群视频射精 | 麻豆国产97在线 | 欧洲 | 国产激情艳情在线看视频 | 自拍偷自拍亚洲精品10p | 国产精品久久久久9999小说 | 免费乱码人妻系列无码专区 | 午夜精品一区二区三区在线观看 | 麻豆av传媒蜜桃天美传媒 | 麻豆国产人妻欲求不满谁演的 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 婷婷六月久久综合丁香 | 亚洲中文字幕在线无码一区二区 | 久久人人爽人人爽人人片av高清 | 亚洲 日韩 欧美 成人 在线观看 | 中文无码精品a∨在线观看不卡 | 久久午夜无码鲁丝片秋霞 | 亚洲一区二区三区偷拍女厕 | 国内精品一区二区三区不卡 | 少妇无码一区二区二三区 | 国产精品美女久久久 | 亚洲综合色区中文字幕 | 人妻人人添人妻人人爱 | 搡女人真爽免费视频大全 | 国产绳艺sm调教室论坛 | 久久久久久久久蜜桃 | 在线观看欧美一区二区三区 | 婷婷综合久久中文字幕蜜桃三电影 | 精品国产青草久久久久福利 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 国产精品怡红院永久免费 | 亚洲爆乳精品无码一区二区三区 | 成人欧美一区二区三区黑人免费 | 99久久婷婷国产综合精品青草免费 | 亚洲熟妇色xxxxx亚洲 | 在线天堂新版最新版在线8 | 狂野欧美性猛xxxx乱大交 | 国产人妻久久精品二区三区老狼 | 中文无码伦av中文字幕 | 九九久久精品国产免费看小说 | 久久久精品成人免费观看 | 精品久久久无码人妻字幂 | 国产亚洲视频中文字幕97精品 | 给我免费的视频在线观看 | 国产午夜无码视频在线观看 | 午夜福利不卡在线视频 | 国产无套内射久久久国产 | 国产精品无码久久av | 牛和人交xxxx欧美 | 色窝窝无码一区二区三区色欲 | 天堂一区人妻无码 | 中国女人内谢69xxxx | 国产莉萝无码av在线播放 | 小鲜肉自慰网站xnxx | 国产精品鲁鲁鲁 | 波多野结衣av一区二区全免费观看 | 少妇无码av无码专区在线观看 | 亚洲色偷偷偷综合网 | 亚洲乱码日产精品bd | 动漫av一区二区在线观看 | 无码国内精品人妻少妇 | 国产熟妇高潮叫床视频播放 | 国产xxx69麻豆国语对白 | 久久亚洲国产成人精品性色 | аⅴ资源天堂资源库在线 | 亚洲欧美色中文字幕在线 | 狠狠亚洲超碰狼人久久 | 少女韩国电视剧在线观看完整 | 欧美性生交xxxxx久久久 | 婷婷五月综合缴情在线视频 | 中文字幕乱码中文乱码51精品 | 亚洲七七久久桃花影院 | 日本爽爽爽爽爽爽在线观看免 | 网友自拍区视频精品 | 国产成人av免费观看 | 麻豆人妻少妇精品无码专区 | 国产高潮视频在线观看 | 久久www免费人成人片 | 欧美日本日韩 | 亚洲阿v天堂在线 | 无码乱肉视频免费大全合集 | 美女极度色诱视频国产 | 国产内射爽爽大片视频社区在线 | 国产无套粉嫩白浆在线 | 国产亚洲精品久久久久久久久动漫 | 亚洲の无码国产の无码影院 | 欧美性猛交xxxx富婆 | 亚洲欧美日韩成人高清在线一区 | 久久国产劲爆∧v内射 | 亚洲成av人综合在线观看 | 亚洲欧美日韩综合久久久 | 激情爆乳一区二区三区 | 乌克兰少妇性做爰 | 亚洲の无码国产の无码影院 | 1000部夫妻午夜免费 | 亚洲成av人在线观看网址 | 捆绑白丝粉色jk震动捧喷白浆 | 亚洲无人区一区二区三区 | 又大又硬又爽免费视频 | 亚洲精品国偷拍自产在线观看蜜桃 | 久久久久免费看成人影片 | 中国大陆精品视频xxxx | 99精品久久毛片a片 | 人人澡人人透人人爽 | 内射欧美老妇wbb | 亚洲成色在线综合网站 | 国产精品第一国产精品 | 18精品久久久无码午夜福利 | 国产艳妇av在线观看果冻传媒 | 毛片内射-百度 | 国产成人精品久久亚洲高清不卡 | 国产成人无码a区在线观看视频app | 日日摸夜夜摸狠狠摸婷婷 | 国产精品无码成人午夜电影 | 两性色午夜免费视频 | 无遮挡国产高潮视频免费观看 | 国产偷国产偷精品高清尤物 | 99久久亚洲精品无码毛片 | 亚洲精品国产精品乱码不卡 | 日本又色又爽又黄的a片18禁 | 九月婷婷人人澡人人添人人爽 | 图片小说视频一区二区 | 俺去俺来也在线www色官网 | 天干天干啦夜天干天2017 | 精品久久久无码人妻字幂 | 水蜜桃色314在线观看 | 国产色xx群视频射精 | 精品成人av一区二区三区 | 亚洲最大成人网站 | 麻豆国产人妻欲求不满 | 我要看www免费看插插视频 | 久久久久成人精品免费播放动漫 | 亚无码乱人伦一区二区 | 欧美日本免费一区二区三区 | 纯爱无遮挡h肉动漫在线播放 | 久久视频在线观看精品 | 日本一卡二卡不卡视频查询 | 久久国产精品萌白酱免费 | 国产人妻精品一区二区三区 | 亚洲大尺度无码无码专区 | 成年女人永久免费看片 | 日日碰狠狠丁香久燥 | 中文字幕无码视频专区 | 亚洲毛片av日韩av无码 | 国产色在线 | 国产 | 国产精品亚洲五月天高清 | 野外少妇愉情中文字幕 | 婷婷五月综合缴情在线视频 | 国产99久久精品一区二区 | 大地资源中文第3页 | 成人精品视频一区二区 | 亚洲综合伊人久久大杳蕉 | 久久久久人妻一区精品色欧美 | 日韩人妻无码中文字幕视频 | 美女扒开屁股让男人桶 | 精品久久久中文字幕人妻 | 国产精品自产拍在线观看 | 国产精品高潮呻吟av久久4虎 | 亚洲精品综合一区二区三区在线 | 无遮挡国产高潮视频免费观看 | 激情内射日本一区二区三区 | 欧美激情一区二区三区成人 | aⅴ亚洲 日韩 色 图网站 播放 | 亚洲小说图区综合在线 | 中文字幕人妻丝袜二区 | 小泽玛莉亚一区二区视频在线 | 日韩人妻无码一区二区三区久久99 | 国产无套粉嫩白浆在线 | 丰满少妇弄高潮了www | 天堂亚洲免费视频 | 国产口爆吞精在线视频 | 日本大乳高潮视频在线观看 | 99久久久无码国产精品免费 | 亚洲色欲色欲天天天www | 四虎影视成人永久免费观看视频 | 久久99精品久久久久婷婷 | 国产九九九九九九九a片 | 麻豆果冻传媒2021精品传媒一区下载 | 欧美一区二区三区视频在线观看 | 亚洲成av人片天堂网无码】 | 无码av岛国片在线播放 | 亚洲精品一区三区三区在线观看 | 天堂亚洲2017在线观看 | 国产美女极度色诱视频www | 人人妻人人澡人人爽欧美一区九九 | 久久99精品国产麻豆 | 在线成人www免费观看视频 | 爽爽影院免费观看 | 国产激情无码一区二区app | 国产日产欧产精品精品app | 小鲜肉自慰网站xnxx | 欧美色就是色 | 国产在热线精品视频 | 久久久www成人免费毛片 | 任你躁国产自任一区二区三区 | 无码av中文字幕免费放 | 欧美黑人性暴力猛交喷水 | 人人澡人人妻人人爽人人蜜桃 | 亚洲色在线无码国产精品不卡 | 亚洲成在人网站无码天堂 | 国产电影无码午夜在线播放 | 国产精品免费大片 | 十八禁视频网站在线观看 | 久久99热只有频精品8 | 国产精品人人妻人人爽 | 欧美亚洲日韩国产人成在线播放 | aⅴ在线视频男人的天堂 | 日本在线高清不卡免费播放 | 丰满少妇高潮惨叫视频 | 国产在线一区二区三区四区五区 | 图片区 小说区 区 亚洲五月 | 欧美精品一区二区精品久久 | 荫蒂被男人添的好舒服爽免费视频 | 88国产精品欧美一区二区三区 | 丰满人妻翻云覆雨呻吟视频 | 欧美精品国产综合久久 | 国产无遮挡又黄又爽免费视频 | av无码不卡在线观看免费 | 国产精品久久久午夜夜伦鲁鲁 | 亚洲日本一区二区三区在线 | 奇米影视7777久久精品人人爽 | 国产亚洲欧美在线专区 | 色婷婷综合中文久久一本 | 国产精品沙发午睡系列 | 女人被男人躁得好爽免费视频 | 国内揄拍国内精品少妇国语 | 国产成人精品三级麻豆 | 一本久道久久综合婷婷五月 | 狂野欧美性猛xxxx乱大交 | 在线播放免费人成毛片乱码 | 青青草原综合久久大伊人精品 | 精品偷自拍另类在线观看 | 女人高潮内射99精品 | 毛片内射-百度 | 中文字幕无码免费久久9一区9 | 国内精品久久久久久中文字幕 | 国产卡一卡二卡三 | 成人综合网亚洲伊人 | 亚洲精品久久久久中文第一幕 | 亚洲精品成a人在线观看 | 激情五月综合色婷婷一区二区 | 日本熟妇人妻xxxxx人hd | 国产成人精品必看 | 日韩欧美中文字幕公布 | 亚洲欧美国产精品久久 | 欧美激情内射喷水高潮 | 伊人久久大香线蕉av一区二区 | 亚洲欧洲无卡二区视頻 | 无码精品人妻一区二区三区av | 久久午夜夜伦鲁鲁片无码免费 | 日韩视频 中文字幕 视频一区 | 欧美日韩综合一区二区三区 | 亚洲精品久久久久久一区二区 | 中国大陆精品视频xxxx | 色综合天天综合狠狠爱 | 亚洲国产精品一区二区美利坚 | 成熟人妻av无码专区 | 国产成人无码一二三区视频 | 呦交小u女精品视频 | 国产日产欧产精品精品app | 久久综合九色综合97网 | 人妻少妇被猛烈进入中文字幕 | 久久精品国产大片免费观看 | 人人妻人人澡人人爽欧美一区 | 亚洲天堂2017无码 | 日韩少妇内射免费播放 | 日日天日日夜日日摸 | 男人的天堂av网站 | 黑人玩弄人妻中文在线 | 麻豆蜜桃av蜜臀av色欲av | 日本一卡二卡不卡视频查询 | 最近的中文字幕在线看视频 | 亚洲国精产品一二二线 | 国产成人午夜福利在线播放 | 国产97人人超碰caoprom | 久久久久久av无码免费看大片 | 中文字幕乱码亚洲无线三区 | 精品国产aⅴ无码一区二区 | 一本一道久久综合久久 | 中文字幕无线码 | 久久久中文字幕日本无吗 | 日日摸日日碰夜夜爽av | 亚洲精品中文字幕 | 国产精品嫩草久久久久 | 免费无码一区二区三区蜜桃大 | 99久久亚洲精品无码毛片 | 精品人妻人人做人人爽夜夜爽 | 精品国产麻豆免费人成网站 | 亚洲中文字幕va福利 | 色综合视频一区二区三区 | 人妻少妇被猛烈进入中文字幕 | 4hu四虎永久在线观看 | 中文字幕日产无线码一区 | 98国产精品综合一区二区三区 | 成人三级无码视频在线观看 | 小泽玛莉亚一区二区视频在线 | 丰满人妻精品国产99aⅴ | 欧美人与牲动交xxxx | 欧美xxxxx精品 | 99精品久久毛片a片 | 亚洲色偷偷偷综合网 | 精品人人妻人人澡人人爽人人 | 亚洲第一网站男人都懂 | 性生交大片免费看女人按摩摩 | 国产精品久久久av久久久 | 日韩视频 中文字幕 视频一区 | 精品厕所偷拍各类美女tp嘘嘘 | 天天躁日日躁狠狠躁免费麻豆 | 日本一卡二卡不卡视频查询 | 国产真实夫妇视频 | 成年美女黄网站色大免费全看 | 亚洲 另类 在线 欧美 制服 | 亚洲精品国产精品乱码不卡 | 国产欧美精品一区二区三区 | 99久久亚洲精品无码毛片 | 大屁股大乳丰满人妻 | 午夜福利电影 | yw尤物av无码国产在线观看 | 东京热一精品无码av | 欧美性生交xxxxx久久久 | 欧美亚洲国产一区二区三区 | 亚洲男女内射在线播放 | 亚洲综合色区中文字幕 | 鲁一鲁av2019在线 | 亚洲 欧美 激情 小说 另类 | 青青草原综合久久大伊人精品 | 国产疯狂伦交大片 | 国产成人精品久久亚洲高清不卡 | 黑森林福利视频导航 | 国产99久久精品一区二区 | 欧美大屁股xxxxhd黑色 | 疯狂三人交性欧美 | 日本爽爽爽爽爽爽在线观看免 | 精品无人区无码乱码毛片国产 | 亚洲爆乳无码专区 | 精品无人国产偷自产在线 | 欧美成人午夜精品久久久 | 精品无人区无码乱码毛片国产 | 欧美野外疯狂做受xxxx高潮 | 亚洲熟悉妇女xxx妇女av | 激情内射日本一区二区三区 | 男人扒开女人内裤强吻桶进去 | 麻花豆传媒剧国产免费mv在线 | 黄网在线观看免费网站 | 国产亚洲欧美在线专区 | aⅴ在线视频男人的天堂 | 日本精品久久久久中文字幕 | 久久久婷婷五月亚洲97号色 | 久久久久久国产精品无码下载 | 国产精品va在线播放 | 国产亚洲精品久久久久久大师 | 久久久久亚洲精品男人的天堂 | 国产三级久久久精品麻豆三级 | 久久久国产一区二区三区 | 欧洲欧美人成视频在线 | 国产综合色产在线精品 | 亚洲一区二区三区四区 | 久久综合网欧美色妞网 | 一本久久伊人热热精品中文字幕 | 鲁鲁鲁爽爽爽在线视频观看 | 性生交大片免费看l | 熟妇人妻激情偷爽文 | 乱码午夜-极国产极内射 | 亚洲国产欧美日韩精品一区二区三区 | 九九热爱视频精品 | 野外少妇愉情中文字幕 | 国产精品久久精品三级 | 99久久人妻精品免费一区 | 少妇无套内谢久久久久 | 国产va免费精品观看 | 丰满妇女强制高潮18xxxx | 国产高潮视频在线观看 | 国产精品人人爽人人做我的可爱 | 久久国产精品萌白酱免费 | 中文字幕日韩精品一区二区三区 | 中文字幕乱码人妻二区三区 | 国产莉萝无码av在线播放 | 无码乱肉视频免费大全合集 | 久久视频在线观看精品 | 色综合久久网 | 亚洲熟熟妇xxxx | 少妇邻居内射在线 | 99久久婷婷国产综合精品青草免费 | 日韩精品久久久肉伦网站 | 内射巨臀欧美在线视频 | 亚洲国产精华液网站w | 久久这里只有精品视频9 | 人妻天天爽夜夜爽一区二区 | 美女扒开屁股让男人桶 | 成年美女黄网站色大免费全看 | 亚洲高清偷拍一区二区三区 | 国内丰满熟女出轨videos | 久久无码人妻影院 | 亚洲综合久久一区二区 | 中文字幕无码av激情不卡 | 国产在线aaa片一区二区99 | 亚洲无人区午夜福利码高清完整版 | 中文字幕无码日韩专区 | 一本色道婷婷久久欧美 | 青春草在线视频免费观看 | 99精品国产综合久久久久五月天 | 大屁股大乳丰满人妻 | 老熟女重囗味hdxx69 | 女人被爽到呻吟gif动态图视看 | 久久99精品国产麻豆 | 88国产精品欧美一区二区三区 | 精品国产乱码久久久久乱码 | 男女猛烈xx00免费视频试看 | 亲嘴扒胸摸屁股激烈网站 | 麻豆果冻传媒2021精品传媒一区下载 | 自拍偷自拍亚洲精品被多人伦好爽 | 无码人妻出轨黑人中文字幕 | 狂野欧美激情性xxxx | 国产一区二区不卡老阿姨 | 国产成人精品无码播放 | 曰本女人与公拘交酡免费视频 | 亚洲成a人片在线观看无码3d | 精品无人区无码乱码毛片国产 | aa片在线观看视频在线播放 | 精品乱码久久久久久久 | 男人的天堂2018无码 | 日产国产精品亚洲系列 | а√天堂www在线天堂小说 | 丰满少妇弄高潮了www | 免费看男女做好爽好硬视频 | 蜜臀aⅴ国产精品久久久国产老师 | 精品国产麻豆免费人成网站 | 中国女人内谢69xxxxxa片 | 2020久久香蕉国产线看观看 | 爽爽影院免费观看 | 日本xxxx色视频在线观看免费 | 国产精品久久久久影院嫩草 | 男女超爽视频免费播放 | 美女极度色诱视频国产 | 免费观看又污又黄的网站 | 午夜精品久久久内射近拍高清 | 国产精品久久久一区二区三区 | 好男人社区资源 | 久久熟妇人妻午夜寂寞影院 | 少妇性荡欲午夜性开放视频剧场 | 精品久久久久久人妻无码中文字幕 | 久久久中文字幕日本无吗 | 色综合天天综合狠狠爱 | 欧美日本免费一区二区三区 | 亚洲中文字幕在线观看 | 鲁大师影院在线观看 | 国产亚洲精品久久久ai换 | 久久精品国产一区二区三区肥胖 | 亚洲色欲色欲天天天www | 国产激情一区二区三区 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 国产偷抇久久精品a片69 | 99精品国产综合久久久久五月天 | 日韩视频 中文字幕 视频一区 | 国内精品人妻无码久久久影院蜜桃 | 成人性做爰aaa片免费看不忠 | 男女超爽视频免费播放 | 亚洲精品久久久久久久久久久 | 国产人妻久久精品二区三区老狼 | 亚洲国产av精品一区二区蜜芽 | 学生妹亚洲一区二区 | 亚洲日本一区二区三区在线 | 无套内谢的新婚少妇国语播放 | 99久久无码一区人妻 | 综合人妻久久一区二区精品 | 精品无码一区二区三区爱欲 | 性欧美熟妇videofreesex | 久久亚洲国产成人精品性色 | 成 人影片 免费观看 | 久久久精品人妻久久影视 | 熟妇女人妻丰满少妇中文字幕 | 亚洲色偷偷男人的天堂 | 亚洲欧美精品aaaaaa片 | 午夜精品久久久内射近拍高清 | 国产精品第一区揄拍无码 | a在线观看免费网站大全 | 日本欧美一区二区三区乱码 | 亚洲日韩精品欧美一区二区 | 久久综合九色综合欧美狠狠 | 又湿又紧又大又爽a视频国产 | 日韩精品a片一区二区三区妖精 | 国精产品一区二区三区 | 老子影院午夜精品无码 | 亚洲精品一区二区三区四区五区 | 国产成人一区二区三区在线观看 | 在线观看欧美一区二区三区 | 国产无套粉嫩白浆在线 | 激情国产av做激情国产爱 | 欧美精品在线观看 | 国产婷婷色一区二区三区在线 | 乱人伦人妻中文字幕无码久久网 | 久久久精品国产sm最大网站 | 7777奇米四色成人眼影 | 双乳奶水饱满少妇呻吟 | 97夜夜澡人人爽人人喊中国片 | 亚洲人成网站免费播放 | 永久黄网站色视频免费直播 | 成人无码精品1区2区3区免费看 | 思思久久99热只有频精品66 | 小sao货水好多真紧h无码视频 | 永久黄网站色视频免费直播 | 亚洲精品午夜国产va久久成人 | 无码人妻出轨黑人中文字幕 | 网友自拍区视频精品 | 国产人成高清在线视频99最全资源 | 无码人妻少妇伦在线电影 | 国产精品久久久久久久影院 | 国产在线精品一区二区三区直播 | а√资源新版在线天堂 | 人人妻人人澡人人爽人人精品浪潮 | 久青草影院在线观看国产 | 欧美丰满熟妇xxxx | 领导边摸边吃奶边做爽在线观看 | 精品偷拍一区二区三区在线看 | 亚洲人成人无码网www国产 | 国产在线一区二区三区四区五区 | 国产在线精品一区二区高清不卡 | 亚洲国产欧美日韩精品一区二区三区 | 国产精品久久久久无码av色戒 | 又大又紧又粉嫩18p少妇 | 国产精品第一区揄拍无码 | 中文字幕av伊人av无码av | 国产suv精品一区二区五 | 国产成人精品一区二区在线小狼 | 性生交片免费无码看人 | 妺妺窝人体色www在线小说 | 任你躁在线精品免费 | 人妻有码中文字幕在线 | 娇妻被黑人粗大高潮白浆 | 国产色精品久久人妻 | 国产午夜手机精彩视频 | 亚洲成av人片天堂网无码】 | 国产手机在线αⅴ片无码观看 | 日韩欧美中文字幕公布 | 国产电影无码午夜在线播放 | 国产精品igao视频网 | 久久熟妇人妻午夜寂寞影院 | 欧美国产日产一区二区 | 国产精品二区一区二区aⅴ污介绍 | 国产精品无码mv在线观看 | 午夜理论片yy44880影院 | 久久久久人妻一区精品色欧美 | 国产亚洲人成在线播放 | 久久zyz资源站无码中文动漫 | 国产一精品一av一免费 | 2020久久超碰国产精品最新 | 久久人妻内射无码一区三区 | 激情五月综合色婷婷一区二区 | 成人欧美一区二区三区黑人免费 | a在线观看免费网站大全 | 成人试看120秒体验区 | 国产午夜精品一区二区三区嫩草 | 亚洲中文字幕乱码av波多ji | 人妻少妇精品视频专区 | 在线观看国产一区二区三区 | 久久久婷婷五月亚洲97号色 | 波多野结衣av一区二区全免费观看 | 国产精品美女久久久网av | 性色欲情网站iwww九文堂 | 国产办公室秘书无码精品99 | а天堂中文在线官网 | 蜜臀aⅴ国产精品久久久国产老师 | 欧美野外疯狂做受xxxx高潮 | 嫩b人妻精品一区二区三区 | 久久综合九色综合欧美狠狠 | 国产后入清纯学生妹 | 成人免费视频视频在线观看 免费 | 国产亚洲美女精品久久久2020 | 久久成人a毛片免费观看网站 | 精品久久久久久人妻无码中文字幕 | 亚洲精品午夜国产va久久成人 | 日韩在线不卡免费视频一区 | 98国产精品综合一区二区三区 | 少妇人妻偷人精品无码视频 | 又大又黄又粗又爽的免费视频 | 欧洲精品码一区二区三区免费看 | 无套内谢老熟女 | 爆乳一区二区三区无码 | 自拍偷自拍亚洲精品被多人伦好爽 | 亚洲精品国产精品乱码不卡 | 亚洲综合无码一区二区三区 | 欧美国产日产一区二区 | 老太婆性杂交欧美肥老太 | 国产午夜福利100集发布 | 欧美日本免费一区二区三区 | 亚洲精品久久久久中文第一幕 | 日本va欧美va欧美va精品 | 精品无人区无码乱码毛片国产 | 强开小婷嫩苞又嫩又紧视频 | 亚洲成av人片在线观看无码不卡 | 在教室伦流澡到高潮hnp视频 | 天天拍夜夜添久久精品大 | 久在线观看福利视频 | 日韩视频 中文字幕 视频一区 | 中文字幕色婷婷在线视频 | 无码人妻黑人中文字幕 | 亚洲熟妇色xxxxx欧美老妇 | 久久久久av无码免费网 | 九九热爱视频精品 | 377p欧洲日本亚洲大胆 | 久久精品人人做人人综合试看 | 欧美午夜特黄aaaaaa片 | 精品无码一区二区三区的天堂 | 久久精品视频在线看15 | 天干天干啦夜天干天2017 | 午夜福利一区二区三区在线观看 | 欧美肥老太牲交大战 | 色婷婷久久一区二区三区麻豆 | 男人的天堂2018无码 | 领导边摸边吃奶边做爽在线观看 | 婷婷综合久久中文字幕蜜桃三电影 | 又黄又爽又色的视频 | 国产做国产爱免费视频 | 一本久道高清无码视频 | 欧美激情一区二区三区成人 | 玩弄少妇高潮ⅹxxxyw | 久久久久人妻一区精品色欧美 | 日本一区二区三区免费播放 | 亚洲精品成人av在线 | 欧美黑人巨大xxxxx | 午夜福利一区二区三区在线观看 | 国产女主播喷水视频在线观看 | 天天躁日日躁狠狠躁免费麻豆 | 精品国精品国产自在久国产87 | 亚洲日本一区二区三区在线 | 国产亚洲精品久久久久久久久动漫 | 天天综合网天天综合色 | 免费看少妇作爱视频 | 免费无码肉片在线观看 | 久久精品人人做人人综合试看 | 欧美成人家庭影院 | 亚洲色欲色欲欲www在线 | 最新国产乱人伦偷精品免费网站 | 西西人体www44rt大胆高清 | 久精品国产欧美亚洲色aⅴ大片 | 无码成人精品区在线观看 | 久久精品国产精品国产精品污 | 久9re热视频这里只有精品 | 好男人www社区 | 日日夜夜撸啊撸 | 偷窥日本少妇撒尿chinese | av无码不卡在线观看免费 | 国产亚洲精品久久久久久久久动漫 | 久久国产精品_国产精品 | 激情内射亚州一区二区三区爱妻 | 国产精品自产拍在线观看 | 波多野结衣av一区二区全免费观看 | 日本精品少妇一区二区三区 | 中文字幕久久久久人妻 | 无码人中文字幕 | 丰满岳乱妇在线观看中字无码 | 老熟女乱子伦 | 国精产品一区二区三区 | av在线亚洲欧洲日产一区二区 | 中文字幕av日韩精品一区二区 | 天天拍夜夜添久久精品大 | 76少妇精品导航 | 久久国产自偷自偷免费一区调 | 欧美日韩久久久精品a片 | 久9re热视频这里只有精品 | 久久国产精品_国产精品 | 日日噜噜噜噜夜夜爽亚洲精品 | 久久国产精品_国产精品 | 亚洲精品国偷拍自产在线观看蜜桃 | 久久99精品久久久久久 | 国产成人午夜福利在线播放 | 天天躁夜夜躁狠狠是什么心态 | 图片小说视频一区二区 | 自拍偷自拍亚洲精品被多人伦好爽 | 少妇邻居内射在线 | 丰满人妻翻云覆雨呻吟视频 | аⅴ资源天堂资源库在线 | 国产精品办公室沙发 | 欧洲精品码一区二区三区免费看 | 精品无码国产自产拍在线观看蜜 | 色五月五月丁香亚洲综合网 | 国产综合色产在线精品 | 亚洲男女内射在线播放 | 国内精品久久久久久中文字幕 | 曰韩少妇内射免费播放 | 丰满岳乱妇在线观看中字无码 | 国产69精品久久久久app下载 | 国产情侣作爱视频免费观看 | 国产极品视觉盛宴 | 老司机亚洲精品影院无码 | 极品嫩模高潮叫床 | 色噜噜亚洲男人的天堂 | 色情久久久av熟女人妻网站 | 无套内谢的新婚少妇国语播放 | 亚洲一区二区三区四区 | 亚洲高清偷拍一区二区三区 | 国产成人av免费观看 | 久久久久久a亚洲欧洲av冫 | 特黄特色大片免费播放器图片 | 成人女人看片免费视频放人 | 国产在线一区二区三区四区五区 | 无套内谢的新婚少妇国语播放 | 精品国精品国产自在久国产87 | 男人的天堂av网站 | 激情综合激情五月俺也去 | 又大又硬又黄的免费视频 | 久久久久成人片免费观看蜜芽 | 无码人妻久久一区二区三区不卡 | 成人av无码一区二区三区 | 日韩av无码一区二区三区不卡 | 麻豆av传媒蜜桃天美传媒 | 国产人妻精品一区二区三区 | 国产亚洲精品精品国产亚洲综合 | 一区二区三区高清视频一 | 中文字幕精品av一区二区五区 | 国产精品亚洲五月天高清 | 久久 国产 尿 小便 嘘嘘 | 亚洲国产精品无码久久久久高潮 | 欧美 亚洲 国产 另类 | 丰满少妇女裸体bbw | 国产无套内射久久久国产 | 午夜福利不卡在线视频 | 在线观看国产午夜福利片 | 少妇厨房愉情理9仑片视频 | 国产成人一区二区三区别 | 国产亚洲精品久久久久久久久动漫 | 色欲久久久天天天综合网精品 | 国产午夜福利亚洲第一 | 在线观看欧美一区二区三区 | 欧美亚洲日韩国产人成在线播放 | 极品嫩模高潮叫床 | 亚洲精品午夜无码电影网 | 东京无码熟妇人妻av在线网址 | 2020最新国产自产精品 | 麻豆精品国产精华精华液好用吗 | 亚洲第一网站男人都懂 | 无码成人精品区在线观看 | 成人亚洲精品久久久久软件 | 乱码av麻豆丝袜熟女系列 | 婷婷丁香五月天综合东京热 | 色综合久久久无码网中文 | 奇米影视7777久久精品 | 久久www免费人成人片 | 国产成人精品久久亚洲高清不卡 | 国产偷抇久久精品a片69 | 国产亚洲精品久久久久久大师 | 国产精品久久久一区二区三区 | 成人三级无码视频在线观看 | 99久久精品日本一区二区免费 | 在线播放免费人成毛片乱码 | 精品水蜜桃久久久久久久 | 亚洲成熟女人毛毛耸耸多 | 国产成人精品视频ⅴa片软件竹菊 | 在线 国产 欧美 亚洲 天堂 | 色诱久久久久综合网ywww | 欧美自拍另类欧美综合图片区 | 亚洲gv猛男gv无码男同 | 久久亚洲国产成人精品性色 | 红桃av一区二区三区在线无码av | а√天堂www在线天堂小说 | 无码毛片视频一区二区本码 | 88国产精品欧美一区二区三区 | 国产成人精品无码播放 | 内射老妇bbwx0c0ck | 亚洲色大成网站www国产 | 色婷婷av一区二区三区之红樱桃 | 一二三四社区在线中文视频 | 国产成人久久精品流白浆 | 乱人伦人妻中文字幕无码久久网 | 久久久精品国产sm最大网站 | 少妇无套内谢久久久久 | 亚拍精品一区二区三区探花 | 亚洲va欧美va天堂v国产综合 | 久久久久成人精品免费播放动漫 | 日韩精品久久久肉伦网站 | 午夜不卡av免费 一本久久a久久精品vr综合 | 亚洲精品久久久久avwww潮水 | 精品国产福利一区二区 | 国产亚洲欧美日韩亚洲中文色 | 国产麻豆精品一区二区三区v视界 | 性色欲网站人妻丰满中文久久不卡 | 97se亚洲精品一区 | 福利一区二区三区视频在线观看 | 牲交欧美兽交欧美 | 国产亚洲精品久久久久久大师 | 精品久久综合1区2区3区激情 | 亚洲va中文字幕无码久久不卡 | 最近中文2019字幕第二页 | 亚洲区欧美区综合区自拍区 | 无码人妻av免费一区二区三区 | 久青草影院在线观看国产 | 风流少妇按摩来高潮 | 亚洲欧美色中文字幕在线 | 国产精品亚洲一区二区三区喷水 | 国产激情一区二区三区 | 国产成人精品久久亚洲高清不卡 | 久久久久久久久蜜桃 | 无码国产激情在线观看 | 欧美自拍另类欧美综合图片区 | 亚洲熟妇色xxxxx欧美老妇y | 国产在线精品一区二区三区直播 | 国产精品人人爽人人做我的可爱 | 久激情内射婷内射蜜桃人妖 | 骚片av蜜桃精品一区 | 国产精品va在线观看无码 | 日本精品久久久久中文字幕 | 我要看www免费看插插视频 | 香蕉久久久久久av成人 | 久久亚洲中文字幕精品一区 | 国产精品香蕉在线观看 | 国产两女互慰高潮视频在线观看 | 亚洲区欧美区综合区自拍区 | 在线欧美精品一区二区三区 | 日韩精品乱码av一区二区 | 天天av天天av天天透 | 国产精品亚洲一区二区三区喷水 | 国产口爆吞精在线视频 | 日韩人妻无码一区二区三区久久99 | 久久国产自偷自偷免费一区调 | 欧美丰满熟妇xxxx性ppx人交 | 亚洲色欲久久久综合网东京热 | 帮老师解开蕾丝奶罩吸乳网站 | 玩弄人妻少妇500系列视频 | 小鲜肉自慰网站xnxx | 免费观看激色视频网站 | 欧美日韩人成综合在线播放 | 黑人大群体交免费视频 | 在线成人www免费观看视频 | 亚洲精品久久久久久一区二区 | 亚洲天堂2017无码 | 波多野结衣aⅴ在线 | 性生交片免费无码看人 | 久久天天躁狠狠躁夜夜免费观看 | 国产成人午夜福利在线播放 | 少妇邻居内射在线 | 久久99精品久久久久久动态图 | 国产免费久久久久久无码 | 熟妇人妻激情偷爽文 | 亚洲国产精品久久久天堂 | 人妻无码αv中文字幕久久琪琪布 | 成人免费视频视频在线观看 免费 | 丰满人妻翻云覆雨呻吟视频 | 99久久人妻精品免费二区 | 夜夜高潮次次欢爽av女 | 国产人成高清在线视频99最全资源 | 久久久久久久女国产乱让韩 | 亚洲欧美综合区丁香五月小说 | 在线看片无码永久免费视频 | 中文字幕无码av激情不卡 | 精品国偷自产在线视频 | 天天综合网天天综合色 | 久久zyz资源站无码中文动漫 | 夜先锋av资源网站 | 久久午夜无码鲁丝片午夜精品 | 97夜夜澡人人双人人人喊 | a片免费视频在线观看 | 亚洲理论电影在线观看 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 2020最新国产自产精品 | 久久午夜夜伦鲁鲁片无码免费 | 少妇人妻av毛片在线看 | 欧美亚洲日韩国产人成在线播放 | 俺去俺来也在线www色官网 | 亚洲中文字幕乱码av波多ji | www国产精品内射老师 | 丰满少妇弄高潮了www | 樱花草在线播放免费中文 | 无码人妻黑人中文字幕 | 人人爽人人澡人人人妻 | 中文字幕av无码一区二区三区电影 | 青青青手机频在线观看 | 国产精品永久免费视频 | 亚洲色大成网站www | 99久久婷婷国产综合精品青草免费 | 久久久中文字幕日本无吗 | 国产人妻精品一区二区三区 | 少妇性l交大片欧洲热妇乱xxx | 亚洲中文字幕在线观看 | 四十如虎的丰满熟妇啪啪 | 高潮喷水的毛片 | 免费无码午夜福利片69 | 亚洲色大成网站www | 无套内谢的新婚少妇国语播放 | 久久久婷婷五月亚洲97号色 | 国产电影无码午夜在线播放 | 乱码av麻豆丝袜熟女系列 | 丰满少妇人妻久久久久久 | 99久久久无码国产精品免费 | 岛国片人妻三上悠亚 | 国产精品高潮呻吟av久久 | 玩弄少妇高潮ⅹxxxyw | 国内老熟妇对白xxxxhd | 精品欧洲av无码一区二区三区 | 台湾无码一区二区 | 人人妻人人藻人人爽欧美一区 | 婷婷六月久久综合丁香 | 老熟妇乱子伦牲交视频 | 国内综合精品午夜久久资源 | 久久久久久九九精品久 | 自拍偷自拍亚洲精品10p | 国产欧美亚洲精品a | 国产乱人伦偷精品视频 | 午夜男女很黄的视频 | 久久久久免费看成人影片 | 久久人妻内射无码一区三区 | 国产精品国产自线拍免费软件 | 波多野结衣高清一区二区三区 | 麻豆果冻传媒2021精品传媒一区下载 | 特黄特色大片免费播放器图片 | 国产美女极度色诱视频www | 久久综合香蕉国产蜜臀av | 中文字幕无码乱人伦 | 久久www免费人成人片 | 无套内射视频囯产 | 风流少妇按摩来高潮 | 啦啦啦www在线观看免费视频 | 妺妺窝人体色www在线小说 | 牲欲强的熟妇农村老妇女视频 | 丝袜足控一区二区三区 | 久久久久99精品成人片 | 色一情一乱一伦一视频免费看 | 狠狠噜狠狠狠狠丁香五月 | 在线观看免费人成视频 | 欧美猛少妇色xxxxx | 亚洲aⅴ无码成人网站国产app | 无码成人精品区在线观看 | 久久99精品久久久久久动态图 | 国产精品久久久久影院嫩草 | 伊人久久大香线蕉av一区二区 | 成人亚洲精品久久久久软件 | 1000部夫妻午夜免费 | 国产人妻人伦精品 | 亚洲精品综合五月久久小说 | 一本色道久久综合亚洲精品不卡 | а天堂中文在线官网 | 久久aⅴ免费观看 | 人人澡人人妻人人爽人人蜜桃 | 秋霞成人午夜鲁丝一区二区三区 | 国产真实乱对白精彩久久 | 无码人妻丰满熟妇区毛片18 | 无码帝国www无码专区色综合 | 国产乱子伦视频在线播放 | 国产精品二区一区二区aⅴ污介绍 | 偷窥日本少妇撒尿chinese | 国产人成高清在线视频99最全资源 | 伊人久久大香线蕉av一区二区 | 一本久道久久综合狠狠爱 | 久久综合狠狠综合久久综合88 | 久久天天躁狠狠躁夜夜免费观看 | a国产一区二区免费入口 | 亚洲大尺度无码无码专区 | 国产亚洲精品精品国产亚洲综合 | 少妇被黑人到高潮喷出白浆 | 在线播放无码字幕亚洲 | 99国产欧美久久久精品 | 色五月丁香五月综合五月 | 久久精品国产精品国产精品污 | 永久免费观看国产裸体美女 | 乱中年女人伦av三区 | 日韩在线不卡免费视频一区 | 天海翼激烈高潮到腰振不止 | 精品成人av一区二区三区 | 亚洲日本va午夜在线电影 | 中文精品久久久久人妻不卡 | 亚洲精品美女久久久久久久 | 18禁黄网站男男禁片免费观看 | 1000部啪啪未满十八勿入下载 | 最近的中文字幕在线看视频 | 欧美老人巨大xxxx做受 | 偷窥日本少妇撒尿chinese | 国产精品人妻一区二区三区四 | 乱码午夜-极国产极内射 | 无码av最新清无码专区吞精 | 亚洲精品久久久久avwww潮水 | 欧美丰满熟妇xxxx | 久久97精品久久久久久久不卡 | 欧美激情一区二区三区成人 | 精品一区二区三区波多野结衣 | 免费国产成人高清在线观看网站 | 中文毛片无遮挡高清免费 | 欧美老人巨大xxxx做受 | 亚洲精品鲁一鲁一区二区三区 | 久久精品人人做人人综合试看 | 丰满诱人的人妻3 | 夜夜影院未满十八勿进 | 久久久久免费精品国产 | 国产精品久久久午夜夜伦鲁鲁 | 久久久久久av无码免费看大片 | 55夜色66夜色国产精品视频 | 无码人妻少妇伦在线电影 | 久久久久免费精品国产 | 中文亚洲成a人片在线观看 | 天堂在线观看www | 精品偷自拍另类在线观看 | 任你躁国产自任一区二区三区 | 国产亚洲美女精品久久久2020 | 精品国产一区二区三区四区在线看 | 久久亚洲国产成人精品性色 | 露脸叫床粗话东北少妇 | 国产精品沙发午睡系列 | 欧美精品国产综合久久 | 久久人妻内射无码一区三区 | 国产av一区二区精品久久凹凸 | 婷婷综合久久中文字幕蜜桃三电影 | 精品人妻中文字幕有码在线 | 在线观看国产一区二区三区 | 中文无码成人免费视频在线观看 | 久激情内射婷内射蜜桃人妖 | 清纯唯美经典一区二区 | 欧美性生交活xxxxxdddd | 无码国产色欲xxxxx视频 | 国产亚洲tv在线观看 | 亚洲日韩一区二区三区 | 超碰97人人做人人爱少妇 | 又黄又爽又色的视频 | 久久天天躁狠狠躁夜夜免费观看 | 一本大道久久东京热无码av | 日本成熟视频免费视频 | 又粗又大又硬毛片免费看 | 亚洲国产精品久久人人爱 | 免费中文字幕日韩欧美 | 午夜福利一区二区三区在线观看 | 亚洲成a人一区二区三区 | 夜夜躁日日躁狠狠久久av | 亚洲 日韩 欧美 成人 在线观看 | 午夜肉伦伦影院 | 麻豆精品国产精华精华液好用吗 | 在线观看欧美一区二区三区 | 久久精品国产日本波多野结衣 | 国内精品久久久久久中文字幕 | 久久久久成人片免费观看蜜芽 | 草草网站影院白丝内射 | 亚洲色在线无码国产精品不卡 | 亚洲码国产精品高潮在线 | 日韩欧美群交p片內射中文 | 亚洲精品一区国产 | 亚洲国产成人av在线观看 | 午夜熟女插插xx免费视频 | 中文字幕无码免费久久99 | 国产无遮挡又黄又爽又色 | 国产真实夫妇视频 | 无码人妻黑人中文字幕 | 国产精品久久久一区二区三区 | 丰满护士巨好爽好大乳 | 国产特级毛片aaaaaa高潮流水 | 日本一卡2卡3卡四卡精品网站 | 国产精品视频免费播放 | 欧美高清在线精品一区 | 中文字幕无线码免费人妻 | aa片在线观看视频在线播放 | 成人片黄网站色大片免费观看 | 最新版天堂资源中文官网 | 在线视频网站www色 | 国产熟女一区二区三区四区五区 | 欧美老妇交乱视频在线观看 | 熟妇激情内射com | 欧美性猛交xxxx富婆 | 亚洲色成人中文字幕网站 | 免费无码一区二区三区蜜桃大 | 色综合视频一区二区三区 | 成 人 免费观看网站 | 亚洲呦女专区 | 日韩精品乱码av一区二区 | 成在人线av无码免费 | 国产成人人人97超碰超爽8 | 人妻尝试又大又粗久久 | 国内丰满熟女出轨videos | 国产成人精品必看 | 亚洲爆乳无码专区 | 18无码粉嫩小泬无套在线观看 | 中文字幕无码热在线视频 | 色欲人妻aaaaaaa无码 | 中国女人内谢69xxxxxa片 | 亚洲伊人久久精品影院 | 精品人人妻人人澡人人爽人人 | 欧美性猛交内射兽交老熟妇 | 一本久久a久久精品亚洲 | 一本一道久久综合久久 | 丝袜美腿亚洲一区二区 | 波多野结衣高清一区二区三区 | 亚洲va中文字幕无码久久不卡 | 久久久无码中文字幕久... | 曰韩少妇内射免费播放 | 亚洲精品鲁一鲁一区二区三区 | 日韩精品a片一区二区三区妖精 | 亚洲中文字幕无码中字 | 欧美日韩久久久精品a片 | 免费人成在线观看网站 | 国产精品久久福利网站 | 欧美 日韩 人妻 高清 中文 | 亚洲国产成人av在线观看 | 国产午夜精品一区二区三区嫩草 | 亚洲热妇无码av在线播放 | 国产人妻人伦精品 | 无码国产乱人伦偷精品视频 | 成人女人看片免费视频放人 | 亚洲综合在线一区二区三区 | 国产午夜手机精彩视频 | 狠狠cao日日穞夜夜穞av | 国产精品久久久午夜夜伦鲁鲁 | 国产美女极度色诱视频www | 久久综合给合久久狠狠狠97色 | 欧美人与牲动交xxxx | 一本色道久久综合狠狠躁 | 欧美国产日韩亚洲中文 | 欧美精品在线观看 | 国产精品对白交换视频 | 人妻夜夜爽天天爽三区 | 特级做a爰片毛片免费69 | 色窝窝无码一区二区三区色欲 | 狠狠综合久久久久综合网 | 极品嫩模高潮叫床 | 性生交片免费无码看人 | 性生交大片免费看女人按摩摩 | 欧美老妇与禽交 | 十八禁真人啪啪免费网站 | 人人妻人人澡人人爽精品欧美 | 最新国产乱人伦偷精品免费网站 | 国产成人一区二区三区在线观看 | 成人免费视频视频在线观看 免费 | 国产精品久久久久7777 | 久在线观看福利视频 | 国产精品二区一区二区aⅴ污介绍 | 大地资源网第二页免费观看 | 全黄性性激高免费视频 | 中文字幕乱妇无码av在线 | 国产无av码在线观看 | 99久久久国产精品无码免费 | 国产精品人人爽人人做我的可爱 | 纯爱无遮挡h肉动漫在线播放 | 久久精品一区二区三区四区 | 亚洲中文字幕无码中字 | 国产精品亚洲综合色区韩国 | 国产精品久久久久久亚洲影视内衣 | 久久国产精品二国产精品 | 亚洲日韩乱码中文无码蜜桃臀网站 | 两性色午夜免费视频 | 午夜精品久久久久久久久 | 人妻少妇精品久久 | 色诱久久久久综合网ywww | 超碰97人人做人人爱少妇 | 性色欲情网站iwww九文堂 | 97久久国产亚洲精品超碰热 | 国产精品-区区久久久狼 | 久久精品人人做人人综合试看 | 日韩亚洲欧美中文高清在线 | 国产三级久久久精品麻豆三级 | 日本免费一区二区三区最新 | 亚洲a无码综合a国产av中文 | 亚洲精品午夜国产va久久成人 | 国产成人精品优优av | 亚洲日本va午夜在线电影 | 国产三级精品三级男人的天堂 | 丰满妇女强制高潮18xxxx | 无遮挡啪啪摇乳动态图 |